# Composants graphiques

Les briques de construction d'une boîte de dialogue &kommander; sont les composants graphiques. Ils sont similaires à tout autre composant graphique des librairies &Qt; et &kde; à l'exception du fait qu'ils ont quelques fonctionnalités supplémentaires qui leurs permettent d'avoir un texte associé. Le texte est associé à l'état du composant graphique ou à son connecteur de population. Le nombre d'états dépend du composant graphique. Si un composant graphique ne possède qu'un état, cet état est appelé l'état par défaut.

Texte de composant graphique bla bla bla

La boîte de dialogue possède deux états pour le texte &kommander;. Ces états sont « Initiate » et « Destroy ». Ils sont exécutés lorsque la boîte de dialogue est initialisée et lorsqu'elle est détruite. Ces états protègent de ce qui est connu comme les problèmes de race lors de l'ouverture et cela signifie que vous n'avez pas à faire quoi que ce soit de spécial lors de la fermeture pour conserver un état de fonctionnement propre.

ButtonGroup

- C'est un conteneur pour organiser des boutons dans un groupe. Un titre optionnel peut être ajouté en utilisant la propriété titre. Le cadre peut être modifié à l'aide de la propriété « lineWidth ». Le groupe de boutons peut être paramétré à exclusif en positionnant la propriété « exclusive » à « true ». Cela signifie que lorsqu'un bouton à deux états est cliqué tous les autres boutons à deux états seront positionnés sur arrêt, exception faite des bouton radio qui sont toujours mutuellement exclusifs même si le groupe n'est pas exclusif. Les boutons radios peuvent être configurés à non-exclusif en utilisant la propriété « radioButtonExclusive » (je ne suis pas complètement certain que cette propriété soit actuellement fonctionnelle).

  « ButtonGroup » possède un seul état, « default ».

  Le texte du composant graphique pour un « ButtonGroup » est le texte associé à chaque bouton dans leur ordre d'apparition dans le « ButtonGroup ».

Case à cocher

- Un bouton qui peut être mis en position marche et arrêt. Il peut également être semi-coché si la propriété « tristate » et positionnée sur « true ». Le label associé à la case à cocher est configuré dans la propriété « text ». Sélectionner la propriété « checked » provoquera un état initial coché pour la case à cocher.

  Une case à cocher possède 3 états, coché (« checked »), semi-coché (« semichecked ») et non coché (« unchecked »).

  Le texte du composant graphique pour une case à cocher est la valeur dans la propriété « text ».

CloseButton

- C'est un bouton qui, quand il est coché, exécute son texte associé et ensuite ferme la boîte de dialogue. Le label sur le bouton est configuré à l'aide de la propriété « text ». La sortie du texte associé (comment nommer cela) sera répercutée à « stdout » si la propriété « writeStdout » est positionnée sur « true ». Le bouton peut-être choisi pour être l'action par défaut de la boîte de dialogue si la propriété « default » est positionnée sur « true ».

  « CloseButton » possède un état, « default ».

  Il n'y a aucun composant graphique de texte associé à un « CloseButton ».

ComboBox

- Une liste déroulante (« ComboBox ») est un composant graphique de sélection qui combine un bouton et un menu surgissant (« pop-up »). Il présente le choix courant de l'utilisateur parmi une liste d'options dans un espace minimal. les éléments sont ajoutés à la liste en utilisant la fenêtre de modification. Si la propriété « editable » est positionnée sur « true » l'utilisateur peut saisir n'importe quelle chaîne de caractères.

  Les listes déroulantes possèdent un état, « default ».

  Le texte du composant graphique pour une liste déroulante est le texte de l'élément sélectionné.

ExecButton

- C'est un bouton qui lorsqu'il est cliqué exécute le texte qui lui est associé. Le label sur le bouton et configuré à l'aide de la propriété « text ». La sortie du texte associé (comment nommer cela) sera répercutée à « stdout » si la propriété « writeStdout » est positionnée sur « true ». Le bouton peut-être choisi pour être l'action par défaut de la boîte de dialogue si la propriété « default » est positionnée sur « true ».

  « ExecButton » possède un état, « default ».

  Il n'y a pas de texte de composant graphique associé à un « ExecButton ».

FileChooser

- Le composant graphique de choix de fichier (« FileChooser ») combine un élément « LineEdit » avec un bouton qui, lorsqu'il sera cliqué, présentera une boîte de dialogue à l'utilisateur pour sélectionner des fichier ou dossiers. Le fichier ou dossier sélectionné est conservé dans l'élément « LineEdit ». Le type du « FileChooser » est configuré à l'aide de la propriété « selectionType ». Les types disponibles sont « Open » (Ouvrir), « Save » (Enregistrer) et « Directory » (Dossier). Des fichiers ou dossiers multiples peuvent être sélectionnés si la propriété « selectionOpenMultiple » est positionnée sur « true ». Une légende pour l'élément « FileChooser » peut être configurée à l'aide de la propriété « selectionCaption ». Elle sera affichée en tant que titre de la boîte de dialogue. Si aucune légende n'est spécifiée, le type de la sélection sera affiché dans le titre. Les fichiers affichés dans la boîte de dialogue peuvent être limités en utilisant la propriété « selectionFilter ».

  « FileChosser » possède un état, « default ».

  Le texte du composant graphique pour un élément « FileChooser » est le texte contenu dans l'élément « LineEdit » (le fichier choisi par l'utilisateur).

GroupBox

- C'est un composant graphique qui contient d'autres composants graphiques. Le cadre est modifié à l'aide de la propriété « lineWidth ». Un titre peut être ajouté en donnant une valeur à la propriété « title ».

  « GroupBox » possède un état, « default ».

  Le texte du composant graphique pour un élément « GroupBox » est la combinaison des textes associés à chacun des composants graphiques contenus dans le groupe. Ils seront dans l'ordre où ils apparaissent dans l'élément « GroupBox ».

LineEdit

- Un composant graphique « LineEdit » est une zone d'édition d'une ligne. Il permet à l'utilisateur de saisir ou de modifier une ligne de texte unique. Une valeur initiale pour la ligne peut être paramétrée à l'aide de la propriété « text ». Le composant graphique peut être positionné en lecture seule à l'aide de la propriété « readOnly ». Il y a trois modes pour ce composant graphique, « Normal », « NoEcho » et « Password ». Le mode est sélectionné à l'aide de la propriété « echoMode ».

  « LineEdit » possède un état, « default ».

  Le texte du composant graphique pour un élément « LineEdit » est le texte contenu dans la ligne de texte.

ListBox

- Un composant liste de choix (« ListBox ») donne accès à une liste d'éléments qui peuvent être sélectionnés. Normalement aucun ou un seul élément peuvent être sélectionné. Ce comportement peut être modifié en changeant la propriété « selectionMode ». Des éléments sont ajoutés à la liste de choix en utilisant la fenêtre de modification.

  Une « ListBox » possède uniquement un état, « default ».

  Le texte du composant graphique pour un élément « ListBox » est constitué des éléments contenus dans la liste de choix. @selectedWidgetText retournera uniquement les éléments qui sont actuellement sélectionnés.

ListView

- Ce composant graphique est maintenant fonctionnel dans &kommander;. Il est fonctionnellement identique au composant graphique d'arborescence (« tree widget »), merci d'aller voir ce composant pour plus d'informations.

PixmapLabel

- C'est un composant graphique tout simple qui contient une image ou un label. L'image (« Pixmap ») à afficher est sélectionnée à l'aide de la propriété « pixmap ». Un texte est paramétré à l'aide de la propriété « text ». Uniquement une de ces deux propriétés peut être paramétrée à la fois (je pense que je n'ai pas réussi à faire fonctionner l'éditeur pour afficher les deux en même temps). Si la propriété « scaledContents » est positionnée sur « true » l'image sera redimensionnée pour être contenu dans l'élément graphique. Le format du texte peut être configuré à l'aide de la propriété « textFormat ».

  Ce composant n'est pas un élément actif de &kommander; et il ne possède ni état ni texte associé.

RadioButton

- C'est un bouton qui peut être coché ou non coché, il est généralement utilisé dans un « ButtonGroup » pour produire un choix exclusif. Un label associé au bouton peut être configuré à l'aide de la propriété « text ». Un bouton peut être initialisé à la valeur coché en positionnant la propriété « checked » à « true ». Si tous les bouton radio (« RadioButton ») ont la propriété « checked » à « true », alors le dernier bouton sera celui qui sera en coché.

  Les boutons radio possèdent deux états, coché (« checked ») et non-coché (« unchecked »).

  Il n'y a pas de texte decomposant graphiquee associé avec les boutons radio.

RichTextEditor

- Ce composant graphique fournit un éditeur de texte qui permet du formatage de texte simple.

  Le « RichTextEditor » possède un état, « default ».

  Le texte associé au composant graphique « RichTextEditors » est le texte contenu dans l'éditeur dans un format RTF (« Rich Text Format »). Un texte sélectionné dans l'éditeur peut être obtenu à l'aide du spécial @selectedWidgetText.

SpinBoxInt

- C'est un composant graphique qui permet à l'utilisateur de changer une valeur entière (« integer ») soit en pressant des flèches montantes et descendantes soit en saisissant une valeur dans la boîte. Des valeurs maximum et minimum peuvent être configurés pour le composant graphique à l'aide des propriétés « minValue » et « maxValue ». La propriété « specialValueText » est utilisée pour configurer un texte qui sera affiché à la place de la valeur minimum.

  Ce composant graphique possède un état, « default ».

  Le texte associé au composant graphique « SpinBoxInt » est la valeur entière actuellement affichée.

SubDialog

- C'est un bouton qui exécute une autre boîte de dialogue &kommander; lorsqu'il est actionné. La boîte de dialogue à exécuter est configurée à l'aide de la propriété « kmdrFile ». Si la propriété « default » est positionnée sur « true » la boîte de dialogue s'exécutera si la touche entrée est actionnée pendant que la boîte de dialogue à le focus. Je pense que vous pouvez également l'utiliser en tant que container. J'ai besoin de jouer avec cela un peu plus.

  « SubDialog » possède un état, « default ».

  Le texte associé au composant graphique « SubDialog » est le texte associé à la boîte de dialogue qu'il exécute.

  C'était destiné à contenir la boîte de dialogue, ce qui est maintenant déconseillé. Devrions nous laisser cela à `@dialog()` dans son texte &kommander; ou s'en débarasser ? Dans l'état acteul ce n'est pas satisfaisant.

TabWidget

- C'est un composant graphique qui donne accès à plusieurs onglets qui peuvent chacun contenir d'autres composants graphiques.

TextEdit

- C'est un éditeur simple de texte multiligne.

TextLabel

- C'est un composant graphique simple qui contient un morceau de texte. Ce composant graphique vous permet d'y configurer une image également. Ok, l'éditeur dit qu'ils sont tous les deux des QLabels. Pourquoi avons nous deux composants graphiques qui semblent être les mêmes choses, mais avec des noms différents ? - Il est prévu de corriger ça dans A7.

  Pour la version Alpha 6 ce composant graphique est partiellement fonctionnel et peut être configuré depuis l'extérieur à l'aide d'appels DCOP.

TreeWidget

- C'est un composant graphique qui fourni une liste sous la forme d'une arborescence. Ce composant graphique est totalement opérationnel pour ajouter ou supprimer des éléments dans la version Alpha 6. Vous pouvez ajouter des éléments enfants et des données multi-colonne. La limitation actuelle est que vous ne pouvez pas modifier les colonnes. Pour ajouter une nœud enfant utilisez / comme séparateur. Pour ajouter un colonne utilisez le caractère échappé de tabulation \t entre les colonnes.