Re: Nouveautés de la version de développement 0.7

Nuri wrote:
scorpio810 wrote:

Plus tard on devrait mettre en place un widget pour sélectionner facilement la taille et police par défaut de ces textes.

Chouette !
Par contre, attention aux changement de police et de taille en cours de route.
Comme QET ne gère pas l'alignement des textes, si la métrique de la police change, tous les textes seront décalés, voire les uns sur les autres, et empièteront éventuellement aussi sur les symboles.

Petit test :


https://download.qelectrotech.org/qet/forum_img/policy1.png

"Le jour où tu découvres le Libre, tu sais que tu ne pourras jamais plus revenir en arrière..."

Re: Nouveautés de la version de développement 0.7

Revision: 5165
Author: blacksun
Date: 2017-12-10 15:31:27 +0100 (Sun, 10 Dec 2017)
Log Message:
-----------
Element text item group : Add new property for edit the adjustment of the space between texts
Dynamic element text item editor : Add new entry for edit the alignment, rotation and vertical adjustment of a group
Element Mover : Minor, remove the group texts from the moved content

L'alignement, la rotation, et (spécialement pour Nuri) l'ajustement vertical des groupes de textes est éditable depuis le widget d'édition des textes d'éléments.

Développeur QElectroTech

203 (edited by scorpio810 2017-12-10 18:38:40)

Re: Nouveautés de la version de développement 0.7

Revision: 5166
Author:   scorpio810
Date:     2017-12-10 17:10:19 +0100 (Sun, 10 Dec 2017)
Log Message:
-----------
Add a Qfontdialog for choose policy for independent text item, not
finished yet !

Bon, même si ce n'est fini (reste a créer une page ou une action dans la config plutôt que de lancer le widget directement quand on clique sur configurer QET) j'ai pensé que ça pourrait intéresser certains.

Pour l'instant les textes barrés et soulignés ne sont pas pris en compte.

La configuration des polices est aussi sauvegardée dans le fichier config QET (ou dans la base de registre pour ceux sous Windows) et est appliquée au lancement de QET.

En attendant vos retours.

Enjoy ! nomicons/smile

[General]
diagramitemfont=Noto Sans
diagramitemsize=72
diagramitemstyle=Bold
diagramitemweight=75

lang=fr
m_auto_conductor=false
terminal-exportlist=false
usesystemcolors=true

[diagramcommands]
save-label=false

[diagrameditor]
defaultauthor=laurent
defaultauto_page_num=
defaultcols=20
defaultcolsize=60
.................
...........

"Le jour où tu découvres le Libre, tu sais que tu ne pourras jamais plus revenir en arrière..."

Re: Nouveautés de la version de développement 0.7

Revision: 5168
Author:   scorpio810
Date:     2017-12-11 01:52:33 +0100 (Mon, 11 Dec 2017)
Log Message:
-----------
Add a button in config page for open Qfontdialog widget

https://download.qelectrotech.org/qet/forum_img/policy2.png

Ps : les paquets de la 0.7 ne sont plus compatibles Ubuntu 14.04 LTS, meme si elle sera supportée jusqu'en avril 2019 par canonical, la version de Qt est trop vieille et nous obligent a chaque fois a trouver des workarounds pour que ça compile..
Il est conseillé d'upgrader vers une LTS avec une version récente de Qt.

"Le jour où tu découvres le Libre, tu sais que tu ne pourras jamais plus revenir en arrière..."

205

Re: Nouveautés de la version de développement 0.7

@ scorpio810 :
Ah, cela n'agit que sur diagramitemfont nomicons/shocked .
Je croyais que tu voulais faire und QFontDialog pour diagramfont.
Pour avoir pas mal joué dans le qelectrotech.conf, je sais qu'il faut pas trop tripoter diagramfont sinon cela crée des décalages en fonction de la métrique de police utilisée.

Perso j'ai pas besoin de changer a police des champs de texte. Mais y'a sûrement quelqu'un à qui ce sera utile.
Pourquoi ne pas avoir mis le QFontDialog dans le dialog des "Propriétés des champs de textes" ? (quand on fait clic droit sur un champ de texte)
C'est parce que diagramitemfont est globale ?

@ Joshua :
je vais tester.

206 (edited by Nuri 2017-12-11 04:34:08)

Re: Nouveautés de la version de développement 0.7

@ Joshua :
super, ca avance bien !

Avec l'actualisation des valeurs dans les différents widgets, j'ai remarqué un truc un peu étrange :
si, par exemple, je tape "50" dans la QSpinBox de Position X, le texte bouge à la volée dans l'éditeur de schéma (pas besoin de taper entrée).
Par contre, si je fais incrémenter ou décrémenter la valeur de la QSpinBox avec la molette souris, le texte ne bouge pas à la volée, faut taper entrée.
De plus, pour pouvoir modifier la valeur de la QSpinBox avec la molette souris, il faut d'abord cliquer sur la QSpinBox (activer le widget). Si je ne fais pas le clic, la molette souris est sans effet au dessus du widget. Y'a pas moyen de rendre la QSpinBox tout de suite active ? Y'a plein d'endroits dans QET où ces widgets sont directement modifiables sans besoin de cliquer dessus et c'est très agréable nomicons/rolleyes .

Pareil avec la QComboBox "alignement" dans un groupe de texte : il faut d'abord sortir du widget (cliquer ailleurs) pour que la nouvelle valeur soit prise en compte.

Un truc que j'ai toujours pas compris : à quoi sert donc ce champ "tagg" ? nomicons/wassat

Dans le QTreeView des textes dynamiques, quand je clique sur "couleur", chez moi, la boîte de dialogue pour choisir la couleur s'ouvre toujours en arrière plan (sous la fenêtre QET). Ne faut-il pas rendre ce dialogue modal par rapport à l'application ?

Et enfin, j'aimerai avoir confirmation si, dans l'éditeur d'élément, ces 2 widgets sont encore inactifs car l'implémentation n'est pas encore terminée ?

Post's attachments

nuri_elementeditor_dynamictextwidgets.png, 17.3 kb, 466 x 358
nuri_elementeditor_dynamictextwidgets.png 17.3 kb, 327 downloads since 2017-12-11 

Re: Nouveautés de la version de développement 0.7

Nuri wrote:

Par contre, si je fais incrémenter ou décrémenter la valeur de la QSpinBox avec la molette souris, le texte ne bouge pas à la volée, faut taper entrée.

Ok je pense pouvoir régler ça.

Nuri wrote:

De plus, pour pouvoir modifier la valeur de la QSpinBox avec la molette souris, il faut d'abord cliquer sur la QSpinBox (activer le widget). Si je ne fais pas le clic, la molette souris est sans effet au dessus du widget. Y'a pas moyen de rendre la QSpinBox tout de suite active ?

Je suis sûre à 99% que ce n'est pas possible surtout quand je regarde la doc ici

Nuri wrote:

Pareil avec la QComboBox "alignement" dans un groupe de texte : il faut d'abord sortir du widget (cliquer ailleurs) pour que la nouvelle valeur soit prise en compte.

Ça oui, c'est déjà le cas avec "source du texte"

Pour le champ tagg, je l'avais mis afin que l'utilisateur puisse écrire un truc perso mais qui ne serais pas utilisé par QET, pour une potentiel utilisation future.
Mais t'est pas le premier à poser la question, et au vue de l'évolution des textes (je ne pensais pas aller aussi loin avec les nouveaux textes) et des utilisateurs "avancé" comme toi qui n'en trouve aucune utilité, je pense que je vais l'enlever.

Nuri wrote:

Dans le QTreeView des textes dynamiques, quand je clique sur "couleur", chez moi, la boîte de dialogue pour choisir la couleur s'ouvre toujours en arrière plan (sous la fenêtre QET). Ne faut-il pas rendre ce dialogue modal par rapport à l'application ?

Je vais regarder ça, mais je promet rien car chez moi, le dialogue s'affiche bien au premier plan, donc ça va pas être simple de savoir si oui ou non le problème est réglé.

Et pour finir oui les choses ne sont en cour dans l'éditeur d'élément.

Développeur QElectroTech

Re: Nouveautés de la version de développement 0.7

Nuri wrote:

@ scorpio810 :
Ah, cela n'agit que sur diagramitemfont nomicons/shocked .
Je croyais que tu voulais faire und QFontDialog pour diagramfont.
Pour avoir pas mal joué dans le qelectrotech.conf, je sais qu'il faut pas trop tripoter diagramfont sinon cela crée des décalages en fonction de la métrique de police utilisée.

Surtout pas pour diagramfont qui est une variable globale et qui affecte beaucoup de textes dans le programme et donc le rendu de pas mal d'objets sur tes schemas.
Et comme diagramfont & diagramsize ne sont pas sauvegardées dans le projet, ouvrir ce meme projet sur une autre machine tu risques d'avoir des surprises, à l'instar des nouvelles variables pour les textes indépendants qui elles sont enregistrées dans le projet et donc le rendu devrait être le même quelque soit la machine, a condition que ces polices soient installées aussi sur les autres machines..
Il est préférable que cette variable soit changée manuellement par l'utilisateur en parfaite connaissance de cause.
https://qelectrotech.org/forum/viewtopi … 2438#p2438

Le but étant de séparer les propriétés "font" des textes indépendants des variables globales.

Si tu dois souvent ajouter des textes indépendants sur tes schémas avec une taille fixe de 6 px par exemple au lieu des 9 px par défaut, tu n'as plus besoin avec cette feature de passer a chaque fois par l’éditeur HTML pour réajuster la taille de police, ce qui est peut-être pénible à la longue.
Le choix des polices est un bonus, j'aurai ajouté que le choix de la taille et voila qu'on nous aurai demandé si on pouvait pas aussi avoir le choix des polices, tu sais comment ça se passe. nomicons/smiley-green

"Le jour où tu découvres le Libre, tu sais que tu ne pourras jamais plus revenir en arrière..."

209 (edited by Nuri 2017-12-11 14:07:24)

Re: Nouveautés de la version de développement 0.7

Joshua wrote:

Je suis sûre à 99% que ce n'est pas possible surtout quand je regarde la doc ici

oui, effectivement y'a pas de méthode pour ǵérer ce comportement.
C'est peut-être pas plus mal d'ailleurs, car je viens d'y repenser :
étant donné que le QAbstractItemView possède lui-même une SrollArea, si on le fait défiler et que la QSpinBox choppe le focus au passage, tu changes la valeur de celle-ci sans t'en rendre compte nomicons/dizzy .
Je connais ce comportement dans FreeCAD qui utilise un QAbstractWidget pour éditer les paramètres de ses objets 3D et parfois, en scrollant, tu changes des valeurs dans les QSpinBox. Faut toujours faire attention, c'est parfois pénible.

Joshua wrote:

Pour le champ tagg, je l'avais mis afin que l'utilisateur puisse écrire un truc perso mais qui ne serais pas utilisé par QET, pour une potentiel utilisation future.
Mais t'est pas le premier à poser la question, et au vue de l'évolution des textes (je ne pensais pas aller aussi loin avec les nouveaux textes) et des utilisateurs "avancé" comme toi qui n'en trouve aucune utilité, je pense que je vais l'enlever.

Oui, pas besoin de "Tagg". Normalement, la valeur de "Source du texte" et de "Information" doivent suffire à définir l'information contenu dans "Texte".
2 infos (paramètres) pour définir un texte, c'est déjà pas mal !

Joshua wrote:

Je vais regarder ça, mais je promet rien car chez moi, le dialogue s'affiche bien au premier plan, donc ça va pas être simple de savoir si oui ou non le problème est réglé.

Bizarre... nomicons/wassat : ce matin, la boîte de dialogue s'ouvre au premier plan (devant la fênetre QET). J'y comprends rien !
En tout cas, le dialogue doit être modal par rapport à l'appli, ca c'est sûr.

this->setWindowModality(Qt::ApplicationModal);
    #ifdef Q_OS_MAC
    setWindowFlags(Qt::Sheet);
    #endif

(je sais bien que tu sais écrire ce code, c'est juste que je commence à confonter mes connaissances Qt à la réalité...nomicons/wink )

Et pour finir... j'ai le droit de faire mon chieur ?!? nomicons/smiley-green
Dans le QAbstractItemView des textes dynamiques, est-ce bien nécessaire de faire un sous-niveau d'arborescence pour "Source du texte" ?
Je pense que le QAbstractItemView serait plus simple à manipuler et plus facile à comprendre du premier coup d'oeil si on avait tous les paramètres d'un texte dispo en un seul niveau d'arborescence.
Quand on a plusieurs textes ouverts, les yeux s'y perdent un peu dans toutes ces lignes...
Comme ca ?

Post's attachments

nuri_qabstractitem_view_1niveau.png, 37.8 kb, 536 x 391
nuri_qabstractitem_view_1niveau.png 37.8 kb, 269 downloads since 2017-12-11 

Re: Nouveautés de la version de développement 0.7

Revision: 5182
Author: blacksun
Date: 2017-12-13 22:15:05 +0100 (Wed, 13 Dec 2017)
Log Message:
-----------
Dynamic element text item : remove the "tagg" property:
Tree Widget for edit the element text item :
-Change a value of a spinbox with the mouse wheel, apply the change in live (no need to press enter or leave focus).
-Remove the sub-level of source of text.

Développeur QElectroTech

211

Re: Nouveautés de la version de développement 0.7

Chouette nomicons/grin

J'ai survolé le commit :
pour changer le comportement des QSpinBox, il fallait donc bricoler les QEvent qui y sont associés et pas chercher dans les paramètres de QAbstractItemView.
J'ai vu que t'as fait pareil aussi pour les QComboBox, c'est bien !
Ca n'avait pas l'air simple à régler, bravo nomicons/cool .

Concernant le QColorDialog pour changer la couleur des textes, j'ai remarqué ceci :
- je démarre fraîchement QET
- sur le folio, j'insère un élément contenant un texte dynamique rouge avec source "texte utilisateur"
- je clique sur ce texte et clique sur le champ "couleur"
- le QColorDialog s'ouvre au premier plan
- je change rien et clique sur "annuler"
- le texte rouge devient noir --> anormal

Dès qu'on annule le QColorDialog, les textes redeviennent noir.
De plus, si on annule le QColorDialog, et qu'on re-clique sur le QPushButton pour changer la couleur, plus rien ne se passe (le dialogue ne s'ouvre pas).

Chez moi, le QColorDialog s'ouvre au premier plan seulement à la première ouverture. Les fois d'après, il s'ouvre toujours derrière le fenêtre principale de QET. Si je redémarre QET, même comportement : la première fois devant, et après toujours derrière.
J'ai regardé la doc de QColorDialog et il est explicitement écrit que :
"The static functions provide modal color dialogs."
Donc je pige pas pourquoi ce machin s'ouvre derrière la fenêtre QET, sauf au premier appel.

Une petite piste pour chercher l'erreur :
si je clique sur le QPushButton qui appelle le QColorDialog, le dialogue s'ouvre.
Je touche à rien d'autre et je ferme QET. Le QColorDialog existe toujours et n'a pas été détruit par QETapp.
Visiblement, il y a un problème de parenté avec ce dialogue.

Re: Nouveautés de la version de développement 0.7

@ Nuri :
J'ai remarqué pas mal de warnings en compilant ce commit, je pense que les soucis que tu mentionnes viennent de là !

Post's attachments

Attachment icon build_warnings.txt 25.09 kb, 290 downloads since 2017-12-14 

"Le jour où tu découvres le Libre, tu sais que tu ne pourras jamais plus revenir en arrière..."

213

Re: Nouveautés de la version de développement 0.7

@ Laurent :
oui j'avais les mêmes warnings.
Mais je pense pas qu'ils soient en rapport avec le QColorDialog qui existe aussi en dehors de l'application.

214 (edited by Nuri 2017-12-14 16:05:30)

Re: Nouveautés de la version de développement 0.7

Nuri wrote:

Chez moi, le QColorDialog s'ouvre au premier plan seulement à la première ouverture. Les fois d'après, il s'ouvre toujours derrière le fenêtre principale de QET

Sous KDE, le QColorDialog s'ouvre toujours en avant-plan (devant la fenêtre QET) mais l'OS considère que c'est une appli à part entière car, dans la barre des tâches, il m'affiche 2 fenêtres pour QET (l'appli principale et le dialogue).
Alors que si j'ouvre le QColorDialog pour choisir la couleur des conducteurs, par exemple, le dialogue est considéré comme une sous-fenêtre de l'appli et l'OS ne montre qu'une seule fenêtre dans la barre des tâches.

215 (edited by Joshua 2017-12-15 11:55:59)

Re: Nouveautés de la version de développement 0.7

Nuri wrote:

J'ai survolé le commit :
pour changer le comportement des QSpinBox, il fallait donc bricoler les QEvent qui y sont associés et pas chercher dans les paramètres de QAbstractItemView.

Pas exactement, il fallait "attraper au vol" les QEvent destiné aux QSpinBox et QComboBox, afin de crée un comportement personnalisé, le tout ni dans le QAbstractItemView ou dans le widget (spinbox ou combobox) mais le dans le QStyledItemDelegate. Il s'agit du design pattern MVC revisité à à la sauce Qt.
Bon je te dit ça uniquement pour information, embrouille toi pas trop la tête avec ça pour le moment, ça commence à être des notions avancé de la POO (et Qt en utilise beaucoup d'autres, le système de signaux/slot étant une sorte de Observer et aussi énormément de Flyweight).


Pour le QcolorDialog, je vais regardé si je trouve quelque chose.

Laurent:
Pour les warnings, c'est pas grave, je fais des switchs sur des enums, et tout les valeurs de l'enum n'est pas testé dans le switch. (plus de 160 pour QEvent::Type)

Développeur QElectroTech

Re: Nouveautés de la version de développement 0.7

Nuri wrote:
Nuri wrote:

Chez moi, le QColorDialog s'ouvre au premier plan seulement à la première ouverture. Les fois d'après, il s'ouvre toujours derrière le fenêtre principale de QET

Sous KDE, le QColorDialog s'ouvre toujours en avant-plan (devant la fenêtre QET) mais l'OS considère que c'est une appli à part entière car, dans la barre des tâches, il m'affiche 2 fenêtres pour QET (l'appli principale et le dialogue).
Alors que si j'ouvre le QColorDialog pour choisir la couleur des conducteurs, par exemple, le dialogue est considéré comme une sous-fenêtre de l'appli et l'OS ne montre qu'une seule fenêtre dans la barre des tâches.

Je ne n'ai pas constaté ce fonctionnement sur ma Debian sid kde, il m'affiche 2 fenêtres pour QET (l'appli principale et le dialogue) a chaque fois...le dialogue est toujours au premier plan.

"Le jour où tu découvres le Libre, tu sais que tu ne pourras jamais plus revenir en arrière..."

217 (edited by Nuri 2017-12-15 16:54:05)

Re: Nouveautés de la version de développement 0.7

@ Joshua :
merci pour le infos et les liens, ca me permettra de comprendre quelques notions suplémentaires au passage.

scorpio810 wrote:

il m'affiche 2 fenêtres pour QET (l'appli principale et le dialogue) a chaque fois

Ben justement, c'est ca le hic, il devrait t'en afficher qu'une seule si le QColorDialog était vraiment modal par rapport à l'appli.
Maintenant, essaies le truc suivant :
- démarre QET et crée un projet vierge
- dépose un élément, crée un texte dynamique quelconque.
- enregistre
- clique sur le champ "Couleur" pour ouvrir le QColorDialog
- touche à rien (laisse le dialogue ouvert) et ferme QET
Alors ? Est-ce que le dialogue existe encore ou pas ?

EDIT :
autant pour moi... je constate 2 comportements différents avec le QColorDialog selon l'environnement de bureau utilisé.
Sous KDE, tout à l'air de se comporter normalement :
- quand le dialogue est ouvert, je ne peux pas fermer QET
- donc on a l'impression que le dialogue est modal (je pense plutôt que c'est KWin qui gère ca tout seul)

Sous Unity, je peux fermer QET et le dialogue reste ouvert, comme si c'était une appli à part entière.
Et le launcher de Unity me montre clairement 2 icones. Quand je clique le QColorDialog pour la couleur des conducteurs, le Launcher Unity me montre qu'une seule icône.

Sous KDE, la barre des tâches montre toujours 2 icônes. Que ce soit le QColorDialog des textes dynamiques out celui des conducteurs ne change rien.

Je pense que le Gnome Shell de Joshua doit se comporter à peu près comme Unity.
nomicons/wassat ?

Re: Nouveautés de la version de développement 0.7

Revision: 5189
Author:   scorpio810
Date:     2017-12-17 15:43:39 +0100 (Sun, 17 Dec 2017)
Log Message:
-----------
Add a button in config page for open a new Qfontdialog widget and choose
font for summarry pages (foliolist)

"Le jour où tu découvres le Libre, tu sais que tu ne pourras jamais plus revenir en arrière..."

Re: Nouveautés de la version de développement 0.7

Bonjour,
les nouveaux textes sont maintenant proche de la fin (je parle uniquement de l'éditeur de schéma) et comme je l'avais dis auparavant, le but est d'en finir avec les anciens textes d'éléments.
Actuellement, seul les textes comportant des tags sont encore utilisés en tant "qu'anciens textes", mais plus pour longtemps...nomicons/devil
Grace aux groupes de textes et aux textes encadrés, nous pouvons enfin remplacer le binôme : texte taggé "label" avec dessous texte encadré "commentaire", par le nouveau type de texte, avec le même rendu visuel (pour ceux qui n'auraient pas capté comment, un texte info -> label, dessous un texte info -> commentaire + encadré, le tout dans un groupe de textes avec alignement centré et pour ressembler au maximum aux anciens textes, un ajustement vertical qui va bien).

Concrètement, pour les projets existants, le bascule sera automatique (pensez quand même à faire une sauvegarde de votre .qet avant, on ne sait jamais).
Pour les nouveaux en revanche les choses vont changer.
-Dans l'onglet "informations", il n'y aura plus de case à cocher en face de "label", "commentaire" et "localisation", car dorénavant, ce n'est plus justifié.
-Dans l'éditeur d'éléments, plus d'obligation de rajouter un texte avec le tag "label", étant donné que cela peut-être fait depuis l'éditeur de schémas.
-Avec les éléments fraîchement posés sur un folio, pour obtenir "l'ancien style : label + commentaire encadré", il faudra (au pire des cas avec un élément sans texte) ajouter deux textes et les paramétrer en conséquent.

Le problème, c'est que cela sera très très lourd à l'usage (à mon avis) de devoir répéter encore et toujours la même action. J'ai donc pensé à cela :
Poser un élément lambda, créer les textes comme dit plus haut, puis cliquer sur un bouton, "exporter la configuration des textes".
Ensuite, il suffira de cliquer sur un bouton "importer une configuration de textes" et tada tout est déjà fait.
Il sera possible de créer autant de configurations que besoin et d'en importer plusieurs dans un même élément étant donné que ce sera pour résumer, une automatisation de créations de textes.
Les termes "import/export" ne sont peut-être pas les plus adaptés, mais c'est du détail.

Voila, à vous maintenant.

Développeur QElectroTech

220 (edited by Nuri 2017-12-18 10:27:46)

Re: Nouveautés de la version de développement 0.7

Joshua wrote:

Concrètement, pour les projets existants, le bascule sera automatique (pensez quand même à faire une sauvegarde de votre .qet avant, on ne sait jamais).
Pour les nouveaux en revanche les choses vont changer.

En fin de compte, est-ce que t'as fait une petite moulinette de conversion pour que la structure et les tags xml des projets créés avec v0.6 soient identiques à ceux d'un projet créé avec v0.7 ?
Ou est-ce que des exceptions vont persister en fonction de la version avec laquelle le projet a été créé initialement ?

Joshua wrote:

Le problème, c'est que cela sera très très lourd à l'usage (à mon avis) de devoir répéter encore et toujours la même action.

C'est aussi ce que je me disais nomicons/happy

Joshua wrote:

Poser un élément lambda, créer les textes comme dit plus haut, puis cliquer sur un bouton, "exporter la configuration des textes".
Ensuite, il suffira de cliquer sur un bouton "importer une configuration de textes" et tada tout est déjà fait.

C'est une idée que j'avais dans mes tirroirs et je me demandais si c'était facile à réaliser ou pas.
Tu viens donc de me couper l'herbe sous le pied !
Par quel format vas-tu passer pour faire cet import/export ?
Est-ce que tu vas passer par QSettings ?
L'idéal ce serait de rendre ces configurations indépendantes du projet et de l'application. C'est-à-dire qu'elles ne devraient pas être enregistrées seulement dans le projet ou seulement dans le qelectrotech.conf sinon ca va rendre le transport de ces configurations compliqué. Par exemple :
- je fais une config de textes dans un projet A
- quelques semaines plus tard, je crée un projet B de zéro et j'aimerais réutiliser les configs textes du projet A
Comment je fais ? J'importe un petit fichier dans projet B ou j'importe une config enregistrée dans qelectrotech.conf ?

L'inconvénient de passer par qelectrotech.conf, c'est que ca limite l'enregistrement et l'appel des configs à une seule machine. Si je veux envoyer les configs à mon client qui tourne sous Windows, je serais bloqué puisque QSettings enregistre chez lui dans la base de registre. Il faudrait donc utiliser un format lisible par tous les OS.
Une fois que les configs sont importées dans un projet, elles devraient AUSSI être enregistrées dans ce projet.

Joshua wrote:

Les termes "import/export" ne sont peut-être pas les plus adaptés, mais c'est du détail.

C'est du détail mais les termes utilisés dans la GUI sont toujours importants car c'est aussi eux qui rendent l'appli intuitive ou pas. De plus, des termes bien choisis facilitent le travail des traducteurs (et pas qu'un peu...).
Pour le coup, "importer une configuration de texte" et "exporter une configuration de texte" me semblent tout-à-fait bien choisis.
Laisser uniquement ces messages en tool tip suffit. Je ferais des icônes pour tes boutons quand t'auras fini l'implémentation dans l'éditeur de schémas.

Re: Nouveautés de la version de développement 0.7

nuri wrote:

En fin de compte, est-ce que t'as fait une petite moulinette de conversion pour que la structure et les tags xml des projets créés avec v0.6 soient identiques à ceux d'un projet créé avec v0.7 ?
Ou est-ce que des exceptions vont persister en fonction de la version avec laquelle le projet a été créé initialement ?

La moulinette existe déjà en fait, et vous l'utilisez depuis que les textes non taggé sont convertie en texte dynamique, les "ancien" textes taggé sont exactement les mêmes que les non taggé (en fait ils ont un tagg qui est à "none").
Le problème ne venais pas du tagg lui même (ce n'est qu'une propriété texte) mais de la gestion que l'on faisait par la suite de ces types de texte (coller une Xref dessous, ou alors le commentaire dans un encadré, tenir à jours quand ils sont basé sur une formule etc....).
Maintenant tout ce que je pouvais préparer en temps masqué est fait, la prochaine étape c'est la bascule.

Pour les exceptions en fonction de la version avec laquelle le projet a été créé initialement, je ne peut rien garantir, mais les textes d'éléments sont très vieux, et, ont peu changer depuis leurs créations, donc ça devrais allez.

Pour les imports de configuration de textes, je comptais pas utiliser le QSetting, qui n'est pas fait pour ça en plus.
Je pensais créer un dossier "element_text_pattern" dans le dossier de conf de qet avec dedans des fichiers xml, un par configuration, qui du coup est compatible avec ta demande.

Je n'avais pas pensé à la possibilité de les intégrer au projet, mais oui y'a pas de soucis.

Développeur QElectroTech

222

Re: Nouveautés de la version de développement 0.7

Joshua wrote:

La moulinette existe déjà en fait, et vous l'utilisez depuis que les textes non taggé sont convertie en texte dynamique, les "ancien" textes taggé sont exactement les mêmes que les non taggé (en fait ils ont un tagg qui est à "none").

Ok, je pense piger.

Joshua wrote:

Je pensais créer un dossier "element_text_pattern" dans le dossier de conf de qet avec dedans des fichiers xml, un par configuration, qui du coup est compatible avec ta demande.

Ok, donc en principe tu sais faire (quand je fais une demande ou une proposition, c'est pas toujours facile de cerner le niveau qu'il faut en C++ pour arriver à ses fins, donc parfois je propose des trucs faciles et parfois... quasi infaisables nomicons/devil ).
Et super, tu vas stocker dans du xml, je pense que c'est un bon choix.
Par contre, je pense pas qu'il faille mettre le dossier "element_text-pattern" dans le .conf de l'OS car, du point de vue de l'OS, ce dossier n'a finalement pas de rapport avec la config du logiciel (à fortiori si ces configs sont aussi intégrées dans les projets).
Je voyais ca plutôt dans :
/home/nuri/.qet/user-settings
à côté de /elements et de /titleblocks.
Pourquoi faire comme ca ?
Parce qu'il y aura certainement à l'avenir d'autres petites configurations à stocker quelque part et ce dossier devrait préparer la route pour de nouveaux développements.
Par exemple, avec l'ajout d'une nomenclature dans le projet :
l'utilisateur configure l'apparence des formulaires, etc. et évidemment, il aimerait bien enregistrer cette config pour pouvoir la réutiliser ou pour l'envoyer à un tiers.
Pareil avec l'édition du sommaire, si on décide de le rendre configurable.

Ce serait bien d'avoir aussi l'avis de Laurent, vu qu'il fait quasiment tout le packaging pour quasiment tous les OS, il doit avoir une idée de ce qui est pratique à déployer sur différents OS et de ce qu'il l'est moins.

Ok...
Donc on aura un fichier xml qui stocke une configuration d'affichage pour les textes dynamiques.
Est-ce qu'il faut donner une extension particulière à ce fichier xml ? (comme pour le fichier xml du projet, renommé .qet alors que c'est un banal xml).
Par exemple :
pour les configs de textes dynamiques, on donne l'extension .qetdt (dt = dynamic texts)
pour les configs de nomenclature, on donne l'extension .qetpl (pl = parts list)
pour les configs de sommaire, on donne l'extension .qettc (tc = table of contents)
etc... en fonction des développements qui se feront...
et on place tous ces fichiers dans /home/[user]/.qet/user-settings.
Ensuite, les file pickers pourront filtrer les fichiers en fonction de leur extension.

Est-ce bonne idée ? nomicons/wassat
Est-ce lourdingue à coder ? nomicons/unsure

Re: Nouveautés de la version de développement 0.7

Mise à jour du compilateur clang et du framework Qt sur les prochains bundles macOs :

QElectroTech V 0.70-dev r5191
Compilation : CLANG 9.0.0 (clang-900.0.39.2) - built with Qt 5.10.0 - run with Qt 5.10.0 using 16 thread(s)

"Le jour où tu découvres le Libre, tu sais que tu ne pourras jamais plus revenir en arrière..."

Re: Nouveautés de la version de développement 0.7

Nuri wrote:

Par contre, je pense pas qu'il faille mettre le dossier "element_text-pattern" dans le .conf de l'OS car, du point de vue de l'OS, ce dossier n'a finalement pas de rapport avec la config du logiciel (à fortiori si ces configs sont aussi intégrées dans les projets).
Je voyais ca plutôt dans :
/home/nuri/.qet/user-settings

Oui j'ai pas écrit le bon dossier, mais j'avais bien celui la en tête, pour l'autre tu as raison, il est pas prévue pour ça.
Au sujet du packaging, ça ne change rien pour Laurent, le dossier sera crée lors du premier export d'une conf.

Non les fichiers seront avec l'extension xml, c'est pas comme les .qet, .elmt ou .tbt qui sont ouvrable avec l'application.
Ici ce n'est pas ouvrable, c'est juste une description de texte, qui tout seul, n'avance pas à grand chose.

Au niveau du rangement ce sera dans le sous dossier element_text_pattern (ou un autre nom peut être).
Et pour les possibles autre conf que tu décrit, ce sera dans d'autre sous dossiers.
Alors peut être qu'il y aura qu'un seul fichier par dossier pour beaucoup d'utilisateur, mais c'est pas comme si on avais des DD gigantesque, et j'aime bien quand les choses sont bien rangés.

Développeur QElectroTech

Re: Nouveautés de la version de développement 0.7

Revision: 5194
Author:   scorpio810
Date:     2017-12-30 00:13:35 +0100 (Sat, 30 Dec 2017)
Log Message:
-----------
Basic shape add new CustomDashLine style with
Dash Pattern (<< 10 << 10 );

Les imprimantes même laser ont souvent bien du mal a restituer fidèlement les traits des basic shapes surtout avec des tailles de pen inférieure à 1px, les tirets par défaut se transformant en lignes solides ... rendant les schémas bien moins lisibles !
https://download.qelectrotech.org/qet/forum_img/basic-shapes_customDashLine.png
https://download.qelectrotech.org/qet/forum_img/basic-shapes_customDashLine1.png

"Le jour où tu découvres le Libre, tu sais que tu ne pourras jamais plus revenir en arrière..."