QElectroTech  0.8-dev
Public Slots | Signals | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
QTextOrientationWidget Class Reference

#include <qtextorientationwidget.h>

Inherits QWidget.

Collaboration diagram for QTextOrientationWidget:
Collaboration graph

Public Slots

void setOrientation (const double &)
 

Signals

void orientationChanged (double)
 

Public Member Functions

 QTextOrientationWidget (QWidget *=nullptr)
 
 ~QTextOrientationWidget () override
 
double orientation () const
 
void setFont (const QFont &)
 
QFont font () const
 
void setDisplayText (bool)
 
bool textDisplayed () const
 
void setUsableTexts (const QStringList &)
 
QStringList usableTexts () const
 
bool isReadOnly () const
 
void setReadOnly (bool)
 

Protected Member Functions

QSize sizeHint () const override
 
int heightForWidth (int) const override
 
void paintEvent (QPaintEvent *) override
 
void mouseMoveEvent (QMouseEvent *) override
 
void mouseReleaseEvent (QMouseEvent *) override
 

Private Member Functions

 QTextOrientationWidget (const QTextOrientationWidget &)
 
QTextOrientationWidgetoperator= (const QTextOrientationWidget &)
 
QString getMostUsableStringForRadius (const qreal &)
 
void generateTextSizeHash ()
 
bool positionIsASquare (const QPointF &, double *=nullptr)
 

Private Attributes

double squares_interval_
 Interval between commonly used angles (represented by squares), in degrees. More...
 
double current_orientation_
 current angle More...
 
bool display_text_
 Whether to display an example text. More...
 
QFont text_font_
 Font used to render the example text. More...
 
QHash< QString, qreal > text_size_hash_
 Associate available example texts with their length (in pixels) More...
 
double highlight_angle_
 Specific angle to be highlighted. More...
 
bool must_highlight_angle_
 Whether to highlight a specific angle. More...
 
bool read_only_
 Whether this widget is read only. More...
 

Detailed Description

This class provides a visual representation of a text orientation.

Constructor & Destructor Documentation

◆ QTextOrientationWidget() [1/2]

QTextOrientationWidget::QTextOrientationWidget ( QWidget *  parent = nullptr)

Constructeur Par defaut, ce widget met en valeur les angles multiples de 45 degres et presente un texte oriente a 0 degre, avec la police par defaut de l'application. Le texte affiche est

Parameters
parentWidget parent

◆ ~QTextOrientationWidget()

QTextOrientationWidget::~QTextOrientationWidget ( )
override

Destructeur

◆ QTextOrientationWidget() [2/2]

QTextOrientationWidget::QTextOrientationWidget ( const QTextOrientationWidget )
private

Member Function Documentation

◆ font()

QFont QTextOrientationWidget::font ( ) const
Returns
la police utilisee pour le texte affiche
Here is the caller graph for this function:

◆ generateTextSizeHash()

void QTextOrientationWidget::generateTextSizeHash ( )
private

S'assure que le hash associant les textes utilisables a leur taille soit correctement rempli.

Here is the caller graph for this function:

◆ getMostUsableStringForRadius()

QString QTextOrientationWidget::getMostUsableStringForRadius ( const qreal &  radius)
private
Parameters
radiusRayon du cercle qui limitera le rendu du texte
Returns
la chaine la plus appropriee en fonction de la taille du widget.
Here is the call graph for this function:
Here is the caller graph for this function:

◆ heightForWidth()

int QTextOrientationWidget::heightForWidth ( int  w) const
overrideprotected
Parameters
wune largeur donnee
Returns
la hauteur preferee pour une largeur donnee Pour ce widget : retourne la largeur fournie afin de maintenir le widget carre

◆ isReadOnly()

bool QTextOrientationWidget::isReadOnly ( ) const
Returns
true si le widget est en mode "lecture seule", false sinon

◆ mouseMoveEvent()

void QTextOrientationWidget::mouseMoveEvent ( QMouseEvent *  event)
overrideprotected

Gere les mouvements de la souris sur ce widget

Parameters
eventEvenement decrivant le mouvement de la souris
Here is the call graph for this function:

◆ mouseReleaseEvent()

void QTextOrientationWidget::mouseReleaseEvent ( QMouseEvent *  event)
overrideprotected

Gere les relachements de la souris sur ce widget

Parameters
eventEvenement decrivant le relachement de la souris
Here is the call graph for this function:

◆ operator=()

QTextOrientationWidget& QTextOrientationWidget::operator= ( const QTextOrientationWidget )
private

◆ orientation()

double QTextOrientationWidget::orientation ( ) const
Returns
l'orientation / l'angle actuellement selectionne(e) 0 degre correspond a un texte horizontal, de gauche a droite 90 degres correspondent a un texte vertical de haut en bas

◆ orientationChanged

void QTextOrientationWidget::orientationChanged ( double  )
signal

Signal emitted when users specify an orientation by clicking the widget.

Here is the caller graph for this function:

◆ paintEvent()

void QTextOrientationWidget::paintEvent ( QPaintEvent *  event)
overrideprotected

Effectue le rendu du widget

Parameters
eventEvenement decrivant la demande de rendu du widget
Here is the call graph for this function:

◆ positionIsASquare()

bool QTextOrientationWidget::positionIsASquare ( const QPointF &  pos,
double *  angle_value_ptr = nullptr 
)
private

Determine si une position donnee correspond a un des carres representant un angle pertinent.

Parameters
posPosition donnee
angle_value_ptrSi different de 0, le double pointe par ce parametre vaudra l'angle pertinent concerne
Here is the caller graph for this function:

◆ setDisplayText()

void QTextOrientationWidget::setDisplayText ( bool  display_text)
Parameters
display_texttrue pour afficher un texte, false sinon

◆ setFont()

void QTextOrientationWidget::setFont ( const QFont &  font)

Definit la police de caracteres a utiliser pour le texte affiche

Parameters
fontUne police de caracteres
Here is the call graph for this function:

◆ setOrientation

void QTextOrientationWidget::setOrientation ( const double &  angle)
slot
Parameters
anglela nouvelle orientation / le nouvel angle selectionne(e) 0 degre correspond a un texte horizontal, de gauche a droite 90 degres correspondent a un texte vertical de haut en bas
Here is the caller graph for this function:

◆ setReadOnly()

void QTextOrientationWidget::setReadOnly ( bool  ro)
Parameters
rotrue pour passer le widget en mode "lecture seule", false sinon

◆ setUsableTexts()

void QTextOrientationWidget::setUsableTexts ( const QStringList &  texts_list)
Parameters
texts_listUne liste de chaines de caracteres utilisables par le widget afin d'afficher un texte en guise d'exemple. Le widget choisit la chaine la plus appropriee en fonction de sa taille. Note : la liste fournie ne doit pas etre vide. Utilisez setDisplayText si vous ne voulez plus afficher de texte.

◆ sizeHint()

QSize QTextOrientationWidget::sizeHint ( ) const
overrideprotected
Returns
la taille recommandee pour ce widget

◆ textDisplayed()

bool QTextOrientationWidget::textDisplayed ( ) const
Returns
la police utilisee pour le texte affiche

◆ usableTexts()

QStringList QTextOrientationWidget::usableTexts ( ) const
Returns
la liste des chaines dont le widget dispose pour afficher un texte

Member Data Documentation

◆ current_orientation_

double QTextOrientationWidget::current_orientation_
private

current angle

◆ display_text_

bool QTextOrientationWidget::display_text_
private

Whether to display an example text.

◆ highlight_angle_

double QTextOrientationWidget::highlight_angle_
private

Specific angle to be highlighted.

◆ must_highlight_angle_

bool QTextOrientationWidget::must_highlight_angle_
private

Whether to highlight a specific angle.

◆ read_only_

bool QTextOrientationWidget::read_only_
private

Whether this widget is read only.

◆ squares_interval_

double QTextOrientationWidget::squares_interval_
private

Interval between commonly used angles (represented by squares), in degrees.

◆ text_font_

QFont QTextOrientationWidget::text_font_
private

Font used to render the example text.

◆ text_size_hash_

QHash<QString, qreal> QTextOrientationWidget::text_size_hash_
private

Associate available example texts with their length (in pixels)


The documentation for this class was generated from the following files: