Référence de la classe WidgetLigne

Classe du module Editeur. Plus de détails...

#include <widgetLigne.h>

Liste de tous les membres

Connecteurs publics

void cliqueMenu (QAction *)
 Choix de l'action à realiser.
void miseAJourListe ()
 Mise a jour des listes de lignes des signets.

Fonctions membres publiques

 WidgetLigne (Editeur *p)
 Constructeur.
virtual void resizeEvent (QResizeEvent *e)
 Taille de la WidgetLigne.
WidgetListegetListe (int i)
 Récupère un signet.
int enleveLigne (int i)
 Enlève une ligne à un signet.
int ajoutLigne (int i=-1)
 Ajoute une ligne ou l'enlève d'un signet si elle existe deja.
void ajoutWidgetListe (WidgetListe *w)
 Ajoute un signet dans la liste des signets.
void ajoutWidgetListe (QAction *a, QString t, QString i)
 Ajoute un signet dans la liste des signets.
void afficheListe (int)
int listeContientLigne ()
 Retourne le numéro du signet contenant la ligne courante.
void incrementeListe (int i)
 Change la liste contenant la ligne courante.
void chargement ()
 Récupération des signets.
void miseAJourMargin ()
 Taille du widgetLigne.
void miseAJourWidgetListe ()
 Mise à jour de la liste des signets.
WidgetListeexisteListe (QString t, QString c)
 Vérifie l'existence d'un WidgetListe.
void enleveWidgetListe (WidgetListe *w)
 Enlève un WidgetListe de la liste des signets.
void incrementeLigneListe (int debut, int difference)
 Modifie les valeurs des lignes dans les listes.

Fonctions membres protégées

virtual void paintEvent (QPaintEvent *)
 fonction appelée pour afficher les numéros de ligne et les signets, reféfinition de QWidget::paintEvent
virtual void mousePressEvent (QMouseEvent *)
 fonction appelée au clic de la souris, reféfinition de QWidget::mousePressEvent

Attributs privés

Editeurediteur_texte
QPixmap * mon_image
int numero_premiere_ligne
QRectF rectangle
QPointF position_layout
int vertical_scroll_bar_value
int ligne_courante
QList< WidgetListe * > ma_liste
int taille_image
bool ligne_a_droite


Description détaillée

Classe du module Editeur.

C'est la classe gérant l'affichage du numéro des lignes et des signets sur le côté gauche de l'éditeur

Elle récupère le nombre de lignes du fichier et peut ainsi en déduire la taille nécesaire pour la widget

Lorsqu'un clic survient sur la widget, un calcul survient pour découvrir sur quel ligne l'évènement a eu lieu : _ si c'est un clic gauche , on affiche le premier signet _ si c'est un clic droit, un affiche le signet suivant _ si c'est un clic central on affiche un menu avec l'ensemble des signets, un lien vers l'ouverture des préférences ainsi que le choix d'inverser l'affichage des lignes et des signets.


Documentation des constructeurs et destructeur

WidgetLigne::WidgetLigne ( Editeur p  ) 

Constructeur.

Constructeur de la classe WidgetLigne

Paramètres:
p : Editeur lié à la WidgetLigne


Documentation des fonctions membres

void WidgetLigne::afficheListe ( int  numero  ) 

int WidgetLigne::ajoutLigne ( int  i = -1  ) 

Ajoute une ligne ou l'enlève d'un signet si elle existe deja.

Si la ligne courante est contenu dans la widgetliste dont le numéro est passé en parmètre alors on la supprime sinon on l'y ajoute Même opération si le numéro de la liste n'est pas connu sauf que tout s epasse dans la première widgetliste

Paramètres:
i : numéro de la widgetliste dans laquelle on ajoute ou retire la ligne courante
Renvoie:
1 si un ajout a eu lieu, 0 pour une suppression et -1 sinon

void WidgetLigne::ajoutWidgetListe ( QAction *  a,
QString  t,
QString  i 
)

Ajoute un signet dans la liste des signets.

Crée un signet à partir des paramètres et l'ajoute dans la liste des signets

Paramètres:
a : action lié au signet
t : nom du signet
i : chemin de l'image du signet

void WidgetLigne::ajoutWidgetListe ( WidgetListe w  ) 

Ajoute un signet dans la liste des signets.

Paramètres:
w : ajout une widgetListe deja créee

void WidgetLigne::chargement (  ) 

Récupération des signets.

Récupère les signets contenu sur l'ordinateur de l'utilisateur et les ajoute dans la liste des signets

void WidgetLigne::cliqueMenu ( QAction *  a  )  [slot]

Choix de l'action à realiser.

Fonction permettant de savoir quel ation du menu ouvert par le clic central de la souris a été activé : _ soit c'est l'inversement des positions entre les lignes et les signets _ soit on ajoute une ligne à l'action relié au signet

Paramètres:
w : WidgetListe à supprimer

int WidgetLigne::enleveLigne ( int  i  ) 

Enlève une ligne à un signet.

Enlève la ligne courante(sur laquelle on a cliqué) de la widgetliste au numéro passé en paramètre

Paramètres:
i : numéro de la liste dans laquelle on retire la ligne courante
Renvoie:
1 si tout s'est bien passé, -1 sinon

void WidgetLigne::enleveWidgetListe ( WidgetListe w  ) 

Enlève un WidgetListe de la liste des signets.

Supprime le widgetListe passé en paramètre de la liste des signets

Paramètres:
w : WidgetListe à supprimer

WidgetListe * WidgetLigne::existeListe ( QString  t,
QString  c 
)

Vérifie l'existence d'un WidgetListe.

Vérifie l'existence de la liste ayant pour nom et chemin de l'image les données passées en paramètre Si on a une correspondance, on renvoit la WidgetListe

Paramètres:
t : nom du signet
c : chemin de l'image du signet
Renvoie:
la liste si elle existe, NULL sinon

WidgetListe * WidgetLigne::getListe ( int  i  ) 

Récupère un signet.

Paramètres:
i : le numéro du signet à récupérer dans la liste des signets
Renvoie:
la liste existe ou NULL

void WidgetLigne::incrementeLigneListe ( int  debut,
int  difference 
)

Modifie les valeurs des lignes dans les listes.

Change la valeur des lignes contenue dans chaque liste de fichier en y ajoutant la différence pour toutes les lignes supérieures à start

Paramètres:
debut : lignes à partir de laquelle on ajoute la différence
difference : valeur à ajouter aux lignes

void WidgetLigne::incrementeListe ( int  i  ) 

Change la liste contenant la ligne courante.

Si il n'y a qu'un signet, alors on ajoute la ligne courante a ce signet Si le signet est le dernier de la liste on l'enlève de cette liste Sinon on insére le signet dans la liste suivant le numéro de la liste passé en paramètre et on l'enlève de cette dernière

Paramètres:
i,: le numéro du signet contenant la ligne courante

int WidgetLigne::listeContientLigne (  ) 

Retourne le numéro du signet contenant la ligne courante.

Renvoie:
le numéro du signet contenant la ligne courante

void WidgetLigne::miseAJourListe (  )  [slot]

Mise a jour des listes de lignes des signets.

Suppression des lignes dans la liste des lignes des signet étant après la dernière ligne du document

void WidgetLigne::miseAJourMargin (  ) 

Taille du widgetLigne.

Calcul la taille nécessaire en largeur pour le widgetLigne et impose la marge en conséquence pour l' Editeur relié à la widgetLigne

void WidgetLigne::miseAJourWidgetListe (  ) 

Mise à jour de la liste des signets.

Lorsque l'utilisateur a modifié ces signets, on vérifie qu'il n'a pas supprimé des signets existant, si c'est le cas on les supprime de la liste des signets et on ajoute les signets qu'il a crée.

void WidgetLigne::mousePressEvent ( QMouseEvent *  e  )  [protected, virtual]

fonction appelée au clic de la souris, reféfinition de QWidget::mousePressEvent

Lorsqu'un clic survient sur la widget, un calcul survient pour découvrir sur quel ligne l'évènement a eu lieu : _ si c'est un clic gauche , on affiche le premier signet _ si c'est un clic droit, un affiche le signet suivant _ si c'est un clic central on affiche un menu avec l'ensemble des signets, un lien vers l'ouverture des préférences ainsi que le choix d'inverser l'affichage des lignes et des signets.

Paramètres:
QMouseEvent* e : contient les paramètres décrivant l'évènement de la souris

void WidgetLigne::paintEvent ( QPaintEvent *  e  )  [protected, virtual]

fonction appelée pour afficher les numéros de ligne et les signets, reféfinition de QWidget::paintEvent

On parcourt le document à la recherche de la bonne ligne à afficher On parcourt le document block par block, on compare la position des block et de la scrollBar Une fois trouvé la ligne correspondante on a juste à afficher le numéro de la ligne Pour la ligne dont on affiche le numéro on vérifie si elle est contenu dans un signet, Si c'est le cas on affiche l'image du signet correpondant

Paramètres:
QPaintEvent* e : contient les paramètres décrivant le style à appliquer

void WidgetLigne::resizeEvent ( QResizeEvent *  e  )  [virtual]

Taille de la WidgetLigne.

Rend la WidgetLigne à la même taille que l' Editeur auquel elle est lié

Paramètres:
e : contient les données relatifs aux évènements agissant sur la taille


Documentation des données membres

Editeur relié à la widgetLigne

ordre dans lequel on affiche les lignes et les signets, si c'est vrai on affiche les signets à gauche et les ligne a droite, on fait l'inverse sinon

Ligne sur laquelle on vient de cliquer

liste de signets

QPixmap* WidgetLigne::mon_image [private]

Récupère le numéro de la première ligne visible

QPointF WidgetLigne::position_layout [private]

point en haut à gauche du rectangle

QRectF WidgetLigne::rectangle [private]

rectanle lié à la ligne courante de Editeur

taille de l'image des signets, elle se modifie avec les zoom

position de la scrollBar vertical de Editeur


La documentation de cette classe a été générée à partir des fichiers suivants :

Généré le Wed May 27 16:15:55 2009 pour MYW par  doxygen 1.5.8