Module plume.rdf.widgetsdict#

Dictionnaires de widgets.

Ce module permet de générer des dictionnaires de widgets (WidgetsDict) rassemblant et structurant toutes les informations nécessaires à la création d’un formulaire de consultation ou saisie des métadonnées.

Création d’un dictionnaire vierge :

>>> widgetsdict = WidgetDict()

Cf. classe WidgetsDict pour les informations pouvant être fournies en argument : graphe contenant les métadonnées de l’objet PostgreSQL, modèle de formulaire, descriptifs des champs…

class plume.rdf.widgetsdict.WidgetsDict(metagraph=None, template=None, data=None, columns=None, mode=None, translation=False, langList=None, language=None, readHideBlank=True, editHideUnlisted=False, readHideUnlisted=True, editOnlyCurrentLanguage=False, readOnlyCurrentLanguage=True, labelLengthLimit=None, valueLengthLimit=None, textEditRowSpan=None)#

Bases : dict

Classe pour les dictionnaires de widgets.

Parameters:
metagraphplume.rdf.metagraph.Metagraph, optional

Le graphe RDF contenant les métadonnées de l’objet PostgreSQL considéré.

templateplume.pg.template.TemplateDict, optional

Un dictionnaire contenant la configuration d’un modèle local de formulaire de consultation/saisie des métadonnées.

datadict, optional

Un dictionnaire dont les clés sont des chemins N3 de catégories de métadonnées, et les valeurs des listes contenant la ou les valeurs à associer à ces catégories, à la place de celles de metagraph. data sert à notamment à mettre à jour certaines métadonnées à partir de sources externes, par exemple des informations calculées par des requêtes sur le serveur. Si data contient la clé dct:identifier, sa valeur deviendra l’identifiant du jeu de données, sous réserve qu’il s’agisse d’un UUID valide.

columnslist(tuple(str, str)), optional

Une liste de tuples - un par champ de la table ou vue PostgreSQL (si l’objet considéré n’est pas un schéma) -, contenant les noms des champs et leurs descriptifs.

mode{“edit”, “read”}, default “edit”

Indique si le dictionnaire est généré pour le mode édition ('edit'), le mode lecture ('read'). Le mode détermine les actions pouvant être exécutées sur le dictionnaire par la suite.

translationbool, default False

Paramètre utilisateur qui indique si les widgets de traduction doivent être affichés. Sa valeur contribue à déterminer les actions pouvant être exécutées sur le dictionnaire. translation sera silencieusement corrigé à False si mode n’est pas “edit”, car l’ajout de traductions n’est évidemment possible qu’en mode édition.

langListlist(str) or tuple(str), default (“fr”, “en”)

Liste des langues autorisées pour les traductions. Les langues doivent être triées par priorité (langues à privilégier en premier).

languagestr, optional

Langue principale de rédaction des métadonnées. Si language n’est pas fourni ou n’appartient pas à langList, la première langue de langList tiendra lieu de langue principale.

Other Parameters:
readHideBlankbool, default True

Les champs vide du formulaire doivent-ils être masqués en mode lecture ?

editHideUnlistedbool, default False

Lorsqu’un modèle (template) est fourni, les champs non référencés par celui-ci doivent-ils être masqués en mode édition même s’ils contiennent une valeur ? Lorsque ce paramètre vaut False, les champs non référencés apparaissent dans l’onglet Autres du formulaire.

readHideUnlistedbool, default True

Lorsqu’un modèle (template) est fourni, les champs non référencés par celui-ci doivent-ils être masqués en mode lecture même s’ils contiennent une valeur ? Lorsque ce paramètre vaut False, les champs non référencés apparaissent dans l’onglet Autres du formulaire.

editOnlyCurrentLanguagebool, default False

Hors mode traduction et pour les propriétés appelant des traductions (type rdf:langString), les valeurs qui ne sont pas dans la langue principale (language) doivent-elles être masquées en mode édition ? S’il n’existe aucune traduction pour la langue demandée, une valeur dans une autre langue est affichée, avec priorisation des langues selon l’ordre de langList.

readOnlyCurrentLanguagebool, default True

Pour les propriétés appelant des traductions (type rdf:langString), les valeurs qui ne sont pas dans la langue principale (language) doivent-elles être masquées en mode lecture ? S’il n’existe aucune traduction pour la langue demandée, une valeur dans une autre langue est affichée, avec priorisation des langues selon l’ordre de langList.

labelLengthLimitint, default 25

Si la longueur d’une étiquette (nombre de caractères) est supérieure à labelLengthLimit, elle est affichée au-dessus du widget de saisie.

valueLengthLimitint, default 65

Si la longueur d’une valeur textuelle (nombre de caractères) est supérieure à valueLengthLimit, elle est affichée sur plusieurs lignes.

textEditRowSpanint, default 6

Hauteur par défaut des widgets de saisie de texte multi-lignes, en nombre de lignes. C’est la valeur utilisée quand le modèle local ou le schéma des métadonnées communes ne définit pas de paramétrage spécifique.

Attributes:
modifiedbool

False pour un dictionnaire qui vient d’être généré. Toutes les méthodes d’actions ont pour effet de passer cet attribut à True.

datasetidplume.rdf.utils.DatasetId

L’identifiant du jeu de données dont le dictionnaire présente les métadonnées.

rootRootKey

La clé racine du dictionnaire, dont toutes les autres sont des descendantes.

nsmPlumeNamespaceManager

Le gestionnaire d’espaces de nommage permettant de résoudre tous les préfixes du dictionnaire.

mode{“edit”, “read”}

'edit' pour un dictionnaire produit pour l’édition, 'read' pour un dictionnaire produit uniquement pour la consultation. Certaines méthodes ne peuvent être utilisées que sur un dictionnaire dont l’attribut mode vaut 'edit'.

translationbool

True pour un dictionnaire comportant des fonctionnalités de traduction, False sinon. Certaines méthodes ne peuvent être utilisées que sur un dictionnaire dont l’attribut translation vaut True.

langlisttuple(str)

Tuple des langues autorisées pour les traductions, ordonné de manière à ce que la langue principale éventuellement fournie à l’initialisation soit la première valeur (et préservant pour le reste l’ordre d’origine du paramètre langList).

hideBlankbool

Les métadonnées sans valeur sont-elles masquées ?

hideUnlistedbool

Les métadonnées avec valeur mais hors modèle sont-elles masquées ?

onlyCurrentLanguagebool

Les métadonnées qui ne sont pas dans la langue principale (language) sont-elles masquées ?

textEditRowSpanint

Hauteur par défaut des widgets de saisie de texte multi-lignes, en nombre de lignes.

valueLengthLimitint

Si la longueur d’une valeur textuelle (nombre de caractères) est supérieure à valueLengthLimit, elle est affichée sur plusieurs lignes.

labelLengthLimitint

Si la longueur d’une étiquette (nombre de caractères) est supérieure à labelLengthLimit, elle est affichée au-dessus du widget de saisie.

Methods

add(buttonkey)

Ajoute une clé sans valeur dans le dictionnaire de widgets.

build_metagraph([preserve_metadata_date])

Construit un graphe de métadonnées à partir du contenu du dictionnaire.

change_language(valuekey, new_language)

Change la langue déclarée pour une clé du dictionnaire de widgets.

change_source(objectkey, new_source)

Change la source déclarée pour une clé du dictionnaire de widgets.

change_unit(valuekey, new_unit)

Change l'unité déclarée pour une clé du dictionnaire de widgets.

check_grids()

Contrôle rapide de la cohérence du placement des widgets.

clear()

computing_query(widgetkey, schema_name, ...)

Renvoie la requête de calcul de la métadonnée côté serveur.

computing_update(widgetkey, result)

Met à jour le dictionnaire de widgets avec des valeurs calculées.

copy()

dictisize_actionsbook([actionsbook])

Traduit un carnet d'actions en dictionnaire.

drop(objectkey)

Supprime une clé du dictionnaire de widgets.

fromkeys(iterable[, value])

Create a new dictionary with keys from iterable and values set to value.

get(key[, default])

Return the value for key if key is in the dictionary, else default.

group_kind(widgetkey)

Renvoie la nature du groupe auquel appartient la clé.

help_text_value(widgetkey)

S'il y a lieu, crée le texte à afficher en infobulle sur la valeur d'un widget.

internalize(widgetkey)

Retranscrit les attributs d'une clé dans le dictionnaire interne associé.

items()

items_to_compute()

Générateur sur les clés à calculer avant la matérialisation du formulaire.

keys()

list_widgets(widgetkey[, with_kind, ...])

Renvoie la liste des widgets référencés pour la clé considérée.

parent_grid(widgetkey)

Renvoie la grille dans laquelle doit être placé le widget de la clé widgetkey.

pop(key[, default])

If the key is not found, return the default if given; otherwise, raise a KeyError.

popitem(/)

Remove and return a (key, value) pair as a 2-tuple.

prepare_value(widgetkey, value)

Prépare une valeur en vue de son enregistrement dans une clé-valeur du dictionnaire de widgets.

print()

Visualisateur très sommaire du contenu du dictionnaire de widgets.

setdefault(key[, default])

Insert key with a value of default if key is not in the dictionary.

str_value(widgetkey)

Renvoie la valeur d'une clé-valeur du dictionnaire de widgets sous forme d'une chaîne de caractères.

type_validator(widgetkey)

S'il y a lieu, renvoie le validateur adapté pour une clé.

update([E, ]**F)

If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v In either case, this is followed by: for k in F: D[k] = F[k]

update_value(widgetkey, value[, override])

Prépare et enregistre une valeur dans une clé-valeur du dictionnaire de widgets.

values()

widget_placement(widgetkey, kind)

Renvoie les paramètres de placement du widget dans la grille.

widget_type(widgetkey)

Renvoie le type de widget adapté pour une clé.

add(buttonkey)#

Ajoute une clé sans valeur dans le dictionnaire de widgets.

Cette méthode est à exécuter après l’activation d’un bouton plus ou bouton de traduction par l’utilisateur.

Parameters:
buttonkeyplume.rdf.widgetkey.PlusButtonKey

La clé du bouton plus ou bouton de traduction actionné par l’utilisateur.

Returns:
dict

Cf. WidgetsDict.dictisize_actionsbook() pour la description de ce dictionnaire, qui contient toutes les informations qui permettront de matérialiser l’action réalisée.

Raises:
ForbiddenOperation

Quand la clé est masquée ou qu’il ne s’agit pas d’un bouton plus.

build_metagraph(preserve_metadata_date=False)#

Construit un graphe de métadonnées à partir du contenu du dictionnaire.

Parameters:
preserve_metadata_datebool, default False

Si True la date de dernière modification du graphe ne sera pas incrémentée.

Returns:
plume.rdf.metagraph.Metagraph

Notes

Sauf lorsque preserve_metadata_date vaut True, la date de mise à jour des métadonnées est silencieusement actualisée lors de la génération du nouveau graphe. Cette modification n’est pas répercuté sur le dictionnaire (et son arbre de clés), ni donc sur les widgets. Elle ne sera visible de l’utilisateur que si un nouveau dictionnaire est généré à partir du nouveau graphe, par exemple lorsqu’il quittera le mode édition.

change_language(valuekey, new_language)#

Change la langue déclarée pour une clé du dictionnaire de widgets.

Cette méthode est à exécuter lorsque l’utilisateur clique sur une langue dans le menu d’un bouton de sélection de la langue.

Parameters:
valuekeyplume.rdf.widgetkey.ValueKey

La clé-valeur dont un item du menu des langues vient d’être actionné par l’utilisateur.

new_languagestr

La nouvelle langue sélectionnée par l’utilisateur.

Returns:
dict

Cf. WidgetsDict.dictisize_actionsbook() pour la description de ce dictionnaire, qui contient toutes les informations qui permettront de matérialiser l’action réalisée.

Raises:
ForbiddenOperation

Quand la clé est masquée, quand la clé n’a pas de widget annexe de sélection de la langue, ou quand la langue n’est pas dans la liste des langues autorisées.

change_source(objectkey, new_source)#

Change la source déclarée pour une clé du dictionnaire de widgets.

Cette méthode est à exécuter lorsque l’utilisateur clique sur une source dans le menu d’un bouton de sélection de la source.

Parameters:
objectkeyplume.rdf.widgetkey.ObjectKey

La clé-valeur ou le groupe de propriété dont un item du menu des sources vient d’être actionné par l’utilisateur.

Returns:
dict

Cf. WidgetsDict.dictisize_actionsbook() pour la description de ce dictionnaire, qui contient toutes les informations qui permettront de matérialiser l’action réalisée.

Raises:
ForbiddenOperation

Quand la clé est masquée, quand la clé n’a pas de widget annexe de sélection de la source, quand la source cible n’est pas dans la liste des sources autorisées pour la clé.

change_unit(valuekey, new_unit)#

Change l’unité déclarée pour une clé du dictionnaire de widgets.

Cette méthode est à exécuter lorsque l’utilisateur clique sur une unité dans le menu d’un bouton de sélection d’unité.

Parameters:
valuekeyplume.rdf.widgetkey.ValueKey

La clé-valeur dont un item du menu des unités vient d’être actionné par l’utilisateur.

new_unitstr

La nouvelle unité sélectionnée par l’utilisateur.

Returns:
dict

Cf. WidgetsDict.dictisize_actionsbook() pour la description de ce dictionnaire, qui contient toutes les informations qui permettront de matérialiser l’action réalisée.

Raises:
ForbiddenOperation

Quand la clé est masquée, quand la clé n’a pas de widget annexe de sélection d’unité, ou quand l’unité n’est pas dans la liste des unités autorisées.

check_grids()#

Contrôle rapide de la cohérence du placement des widgets.

Raises:
plume.exceptions.IntegrityBreach

Si une erreur est détectée.

Notes

Par principe, les widgets masqués parce que leur clé “hidden” vaut True ne sont pas contrôlés. Les boutons moins masqués avec “hidden” valant False mais “hide minus button” sont l’exception qui confirme la règle.

computing_query(widgetkey, schema_name, table_name)#

Renvoie la requête de calcul de la métadonnée côté serveur.

Cette méthode est à utiliser ainsi:
>>> query = widgetsdict.computing_query(widgetkey,
...     'nom du schéma', 'nom de la relation')
>>> cur.execute(*query)
>>> result = cur.fetchall()
Parameters:
widgetkeyplume.rdf.widgetkey.WidgetKey

Une clé de dictionnaire de widgets.

schema_namestr

Nom du schéma de la table ou vue dont le dictionnaire de widgets porte les métadonnées.

table_namestr

Nom de la table ou vue dont le dictionnaire de widgets porte les métadonnées.

Returns:
tuple

Un tuple dont le premier élément est toujours la requête (objet psycopg2.sql.Composed ou psycopg2.sql.SQL) à envoyer au serveur et le second, s’il y a lieu, un tuple contenant les paramètres de cette requête.

Notes

Cette fonction renverra toujours None si la clé compute method du dictionnaire interne associé à la clé considérée vaut None.

computing_update(widgetkey, result)#

Met à jour le dictionnaire de widgets avec des valeurs calculées.

Parameters:
widgetkeyplume.rdf.widgetkey.ValueKey or plume.rdf.widgetkey.GroupOfValuesKey

Une clé de dictionnaire de widgets.

resultlist of tuples

Le résultat de la requête sur le serveur.

Returns:
dict

Cf. WidgetsDict.dictisize_actionsbook() pour la description de ce dictionnaire, qui contient toutes les informations qui permettront de matérialiser les actions réalisées.

Notes

Si la requête n’a pas renvoyé de résultat, cette méthode n’aura aucun effet. Elle n’efface notamment pas les valeurs qui auraient pu être renseignées.

dictisize_actionsbook(actionsbook=None)#

Traduit un carnet d’actions en dictionnaire.

Cette méthode assure également la mise à jour du dictionnaire de widgets.

Parameters:
actionsbookplume.rdf.actionsbook.ActionsBook, optionnal

Le carnet d’actions à traduire. Si aucune carnet n’est fournie, la méthode renvoie un dictionnaire dont toutes les clés ont pour valeur des listes vides.

Returns:
dict

Un dictionnaire avec les clés suivantes :

  • new keys : liste de nouvelles clés du dictionnaire de widgets à matérialiser (plume.rdf.widgetkey.WidgetKey). Elles sont évidemment fournies dans le bon ordre, d’abord les clés parents puis les clés filles. Pour toutes ces clés, il sera nécessaire de générer les widgets, actions et menus, comme à la création initiale du dictionnaire.

  • widgets to show : liste de widgets (QtWidgets.QWidget) à rendre visibles. Il s’agit a priori de widgets antérieurement masqués, mais ce n’est pas une règle absolue.

  • widgets to hide : liste de widgets (QtWidgets.QWidget) à masquer. Il s’agit a priori de widgets antérieurement visibles, mais ce n’est pas une règle absolue.

  • widgets to delete : liste de widgets (QtWidgets.QWidget) à détruire.

  • grids to delete : liste de grilles (QtWidgets.QGridLayout) à détruire.

  • actions to delete : liste d’actions (QtGui.QAction) à détruire.

  • menus to delete : liste de menus (QtWidgets.QMenu) à détruire.

  • language menu to update : liste de clés du dictionnaire de widgets (plume.rdf.widgetkey.WidgetKey) pour lesquelles le menu du bouton de sélection de la langue doit être régénéré.

  • switch source menu to update : liste de clés du dictionnaire de widgets (plume.rdf.widgetkey.WidgetKey) pour lesquelles le menu du bouton de sélection de la source doit être régénéré.

  • unit menu to update : liste de clés du dictionnaire de widgets (plume.rdf.widgetkey.WidgetKey) pour lesquelles le menu du bouton de sélection de l’unité doit être régénéré.

  • concepts list to update : liste de clés du dictionnaire (plume.rdf.widgetkey.WidgetKey) tel que le widget principal est un widget QComboBox dont la liste de termes doit être régénérée.

  • widgets to move : liste de tuples contenant les informations relatives à des widgets dont - parce qu’on a supprimé un widget antérieurement positionné au-dessus d’eux dans la grille - il faut à présent modifier la position. Les tuples comptent six éléments :

    • [0] est la grille (QtWidgets.QGridLayout) ;

    • [1] est le widget (QtWidgets.QWidget) à déplacer ;

    • [2] est le nouveau numéro de ligne du widget dans la grille (paramètre row) ;

    • [3] est l’indice (inchangé) de la colonne (paramètre column) ;

    • [4] est le nombre (inchangé) de lignes occupées (paramètre rowSpan) ;

    • [5] est le nombre (inchangé) de colonnes occupées (paramètre columnSpan).

  • value to update : liste de clés du dictionnaire de widgets (plume.rdf.widgetkey.WidgetKey) telles que la valeur du widget principal doit être mise à jour selon la valeur disponible dans la clé 'value' du dictionnaire interne.

drop(objectkey)#

Supprime une clé du dictionnaire de widgets.

Cette méthode est à exécuter après l’activation d’un bouton moins par l’utilisateur.

Parameters:
objectkeyplume.rdf.widgetkey.ObjectKey

Une clé-valeur ou un groupe de propriété dont l’utilisateur vient d’activer le bouton moins.

Returns:
dict

Cf. WidgetsDict.dictisize_actionsbook() pour la description de ce dictionnaire, qui contient toutes les informations qui permettront de matérialiser l’action réalisée.

Raises:
ForbiddenOperation

Quand la clé est masquée, quand la clé n’a pas de bouton moins.

property edit#

bool: Le dictionnaire est-il généré pour l’édition ?

group_kind(widgetkey)#

Renvoie la nature du groupe auquel appartient la clé.

Parameters:
widgetkeyplume.rdf.widgetkey.ValueKey

Une clé-valeur de dictionnaire de widgets.

Returns:
str
  • 'group of values' si la clé est un groupe de valeurs ou, s’il s’agit d’une clé-valeur ou d’un bouton, si son parent est un groupe de valeurs.

  • 'group of properties' si la clé est un groupe de propriétés ou, s’il s’agit d’une clé-valeur ou d’un bouton, si son parent est un groupe de propriétés. Les clés-racines et les onglets sont considérés ici comme des groupes de propriétés.

  • 'translation group' si l’enregistrement est un groupe de traduction ou, s’il s’agit d’une clé-valeur ou d’un bouton, si son parent est un groupe de traduction.

Raises:
RuntimeError

Si le type obtenu n’est pas l’un des trois susmentionnés.

help_text_value(widgetkey)#

S’il y a lieu, crée le texte à afficher en infobulle sur la valeur d’un widget.

Cette information a vocation à être stockée dans la clé value help text du dictionnaire interne associé à l’objet plume.rdf.widgetkey.ValueKey.

Parameters:
widgetkeyplume.rdf.widgetkey.ValueKey

Une clé-valeur de dictionnaire de widgets.

Returns:
str
internalize(widgetkey)#

Retranscrit les attributs d’une clé dans le dictionnaire interne associé.

Si la clé n’était pas référencée dans le dictionnaire de widgets, cette méthode se charge de la référencer.

Parameters:
widgetkeyplume.rdf.widgetkey.WidgetKey

Une clé du dictionnaire de widgets. Si la clé n’est pas encore référencée dans le dictionnaire, elle le sera.

Raises:
IntegrityBreach

En cas de tentative d’utilisation de cette méthode sur une clé fantôme.

items_to_compute()#

Générateur sur les clés à calculer avant la matérialisation du formulaire.

Similaire à WidgetsDict.items(), si ce n’est que ce générateur travaille sur une copie du dictionnaire et ne s’intéresse qu’aux clés sur lesquelles un calcul automatique côté serveur a été configuré.

La syntaxe d’appel est identique :

>>> widgetkey, internaldict in widgetsdict.items_to_compute():
Yields:
tuple

Le premier élément est la clé du dictionnaire de widgets, qui peut être soit un groupe de valeurs (plume.rdf.widgetkey.GroupOfValuesKey), soit une clé-valeur (plume.rdf.widgetkey.ValueKey). Le second élément du tuple est le dictionnaire interne associé à cette clé (plume.rdf.internaldict.InternalDict).

Notes

Utiliser une copie du dictionnaire permet de faire appel à ce générateur pour ajouter ou supprimer des clés du dictionnaire d’origine, ce qui peut être nécessaire lorsque le calcul est configuré sur un groupe de valeur. Ceci n’est viable que parce que les clés ajoutées ne peuvent être que des clés-valeurs sans calcul (cf. :py:attr`plume.rdf.widgetkey.ValueKey.compute`, qui vaut toujours None dans un groupe de valeurs).

list_widgets(widgetkey, with_kind=False, visible_only=False)#

Renvoie la liste des widgets référencés pour la clé considérée.

Parameters:
widgetkeyplume.rdf.widgetkey.WidgetKey

Une clé du dictionnaire de widgets.

with_kindbool, default False

Si True, la méthode ne renvoie pas une liste de widgets, mais une liste de tuples dont le premier élément est le widget et le second une chaîne de caractères spécifiant sa nature (nom de la clé du dictionnaire interne où il est référencé).

visible_onlybool, default False

Si True, la méthode veille à ne pas renvoyer de widgets masqués.

Returns:
list
property main_language#

str: Language principale de saisie.

Raises:
IntegrityBreach

Lorsque l’attribut WidgetsDict.langlist ne contient aucune valeur.

parent_grid(widgetkey)#

Renvoie la grille dans laquelle doit être placé le widget de la clé widgetkey.

Parameters:
widgetkeyplume.rdf.widgetkey.WidgetKey

Une clé du dictionnaire de widgets.

Returns:
QGridLayout

Si la clé existe, que l’enregistrement a un parent et que la grille de celui-ci a été créée, ladite grille. Sinon None.

prepare_value(widgetkey, value)#

Prépare une valeur en vue de son enregistrement dans une clé-valeur du dictionnaire de widgets.

Parameters:
widgetkeyplume.rdf.widgetkey.ValueKey

Une clé-valeur de dictionnaire de widgets.

valuestr

La valeur, exprimée sous la forme d’une chaîne de caractères. La fonction tolère d’autres types, mais sans garantie que les valeurs soient acceptées.

Returns:
rdflib.term.URIRef or rdflib.term.Literal

Notes

Cette méthode intègre une validation minimale basée sur le type. Les valeurs incorrectes sont silencieusement effacées.

print()#

Visualisateur très sommaire du contenu du dictionnaire de widgets.

Les clés sont imprimées dans la console, avec - si défini - leur libellé, leur valeur et leurs boutons annexes. Une clé ou un bouton masqué apparaît précédé d’un astérisque.

str_value(widgetkey)#

Renvoie la valeur d’une clé-valeur du dictionnaire de widgets sous forme d’une chaîne de caractères.

Si la clé est en lecture seule, la fonction renvoie, s’il y a lieu, un fragment HTML avec un hyperlien.

Parameters:
widgetkeyplume.rdf.widgetkey.ValueKey

Une clé-valeur de dictionnaire de widgets.

Returns:
str
type_validator(widgetkey)#

S’il y a lieu, renvoie le validateur adapté pour une clé.

Parameters:
widgetkeyplume.rdf.widgetkey.WidgetKey

Une clé de dictionnaire de widgets.

update_value(widgetkey, value, override=False)#

Prépare et enregistre une valeur dans une clé-valeur du dictionnaire de widgets.

Parameters:
widgetkeyplume.rdf.widgetkey.ValueKey

Une clé-valeur de dictionnaire de widgets.

valuestr

La valeur, exprimée sous la forme d’une chaîne de caractères. La fonction tolère d’autres types, mais sans garantie que les valeurs soient acceptées.

overridebool, default False

Si True, permet de modifier la valeur d’une clé en lecture seule.

widget_placement(widgetkey, kind)#

Renvoie les paramètres de placement du widget dans la grille.

Parameters:
widgetkeyplume.rdf.widgetkey.WidgetKey

Une clé du dictionnaire de widgets.

kind{“main widget”, “minus widget”, “switch source widget”, “language widget”, “unit widget”, “geo widget”, “compute widget”, “label widget”}

Nature du widget considéré, soit plus prosaïquement le nom de la clé du dictionnaire interne qui le référence.

Returns:
tuple

Le placement dans le QGridLayout est défini par un tuple à quatre éléments : * [0] est l’indice de la ligne (paramètre row) ; * [1] est l’indice de la colonne (paramètre column) ; * [2] est le nombre de lignes occupées (paramètre rowSpan) ; * [3] est le nombre de colonnes occupées (paramètre columnSpan).

Notes

La fonction renvoie None pour une clé fantôme ou si la nature de widget donnée en argument n’est pas une valeur reconnue. Pour les clés-racines et les onglets, elle renvoie un tuple de zéros.

widget_type(widgetkey)#

Renvoie le type de widget adapté pour une clé.

Parameters:
widgetkeyplume.rdf.widgetkey.WidgetKey

Une clé de dictionnaire de widgets.