Topic: Nouveautés de la version de développement 0.8

Hello all,

for Debian/ubuntu users which use QET PPA, or repository and if you want the latest version 0.8-dev, please change your pinning :


sudo sed -i 's/'"version 0.70.*"'/'"version 0.80.*"'/' /etc/apt/preferences.d/40qelectrotech-devel

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

2 (edited by Joshua 2020-10-10 11:50:44)

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

MAJ 10/10/20

Bonjours,
la formule ayant bien marché pour la 0.7 on continue ici la liste des nouveautés de la version 0.8 nomicons/wink .
J’énumérais sur ce topic les nouveautés apportés à la version de développement qui sera la future version 0.8.
Seront présentes uniquement les nouvelles fonctionnalités disponibles pour l'utilisateur.
Tout autre chose, tel que les bugfixs, remaniement de code et autres qui n'apporte rien de nouveau pour l'utilisation de QET ne seront pas mentionné ici, à quelques rares exceptions.
Ce topic n'a pas pour vocation d'être une release note (car ne sera pas exhaustif), mais aidera à visualiser rapidement les évolutions.


Éditeur de schéma :
-L'export de la nomenclature à été entièrement retravaillé. C'elle ci est maintenant configurable : informations à exporter, ordre des colonnes, type d'éléments.
-Chargements des collections d'éléments plus rapide (grace au parseur pugixml)
-Le chargement des collections d'éléments ne freeze plus QElectroTech.
-L'apparition et disparition du menu rechercher / remplacer est animé.
-Ajout de nomenclature intégré au projet (accompagné de plusieurs paramètre afin d'être personnalisable)
-Le sommaire a été intégralement recodé, celui-ci partage en grande parties le code de la nomenclature ainsi que ses paramètres.
-Export de la liste de fileries au format csv
-Les conducteurs possèdent de nouvelles informations : Couleur, section, câble, bus
-Grâce au travail de David Varley, l'export dxf a été grandement amélioré.


Éditeur d'élément :
-Widget d'édition de polygone, lorsque l'on clique sur un point dans la liste, le point correspondant change de couleur afin de mieux visualiser ce que l'on fait.
Sur cette même liste, un clique droit ouvre un menu contextuel permettant de supprimer le point sélectionné ou inséré un point après celui sélectionné.

-Lors du maintient de la touche ctrl + flèche directionnelle, les parties sélectionné se déplace de 0.1 au lieu de 1 point.
-Une énorme quantité de couleurs aux "standard html" a été ajouté.

Développeur QElectroTech

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

QTabBar::tab:selected { font: bold; color: green; }
https://download.qelectrotech.org/qet/forum_img/style_css_green_tab_selected.png

Post's attachments

Attachment icon style.css 984 b, 534 downloads since 2019-08-24 

"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.8

User can choose now folio list emplacement in project by select position number in settings

  • 1 for the first position

  • 2 for the second position

  • etc

  • 0 for always at the end of project

Because index folio is 0 and not 1 we apply -1 in formula to not complicate your life..


On a request from Plc-user in element Editor: added : with Ctrl key you can moving by keyboard primitives selected by 0.1 point instead by 1 points, added the same feature for moving the selected aera.


Btw, Web repository HTML viewer ( elmt to SVG Team made scripts) of element collection was based on old SVN (svn up crontab) now not up to date,  Subversion was abandoned recently by the Team.
GIT is sometimes very complicated to do a simple trick that SVN was easily !!
I dont wan't to use git-sparse-checkout oe sub modules for cloning only a GIT directory, but I found a quickly workaround and use  Github SVN for syncing Github QET mirror to elements remote SVN.

It was still tricky ... the svn checkout crashes towards the end on an error svn: E130003: The XML response contains invalid XML, svn cleanup can not do anything to restore the situation the svn up provand assertion failed (action == svn_wc_conflict_action_delete) well....an rsync from my local clone on the remote then a svn up and it was in the bag.

There is still a lot of work to add dynamic texts that are not yet supported and does not generate a thumbnail of the symbol in the HTML viewer, and text orientation is also not supported.

So many things to do that the days lack of hours....

Improve polygon widget editor on elements editor.
Force fusion style on macOS.
Add green style color for tab selected.

"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.8

Hello QET users,

I upgraded Qt 5 framework to latest 5.13.1 bug fix release look https://www.qt.io/blog/qt-5.13.1-released please try it, MS windows, AppImages and macOS rebuild latest packages.

"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.8

I have modified makefiles to compile qet_git on Mac and "brewed" QT 5.13.1

Regards
Giovanni

Post's attachments

Attachment icon Modified Files.zip 416.93 kb, 452 downloads since 2019-09-07 

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

Why ? is auto generated by qmake.

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

8 (edited by bgio 2019-09-08 16:10:23)

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

It didn't work for me.
I updated brew packages and I run the MacQetDeploy script as usual but QT path was referred to a path to 5.13.0 instead of 5.13.1 generating lots of errors.
Manually modifying those files ( a simple "search and replace) I solved the problem.

Regards
Giovanni

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

Just add Qt 5.13.1 path in your bash_profile:

 cat .bash_profile

# Setting PATH for Qt5.13.1
PATH="/usr/local/Cellar/qt/5.13.1/bin:${PATH}"
export PATH

Check it by 

echo $PATH
which qmake

"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.8

You are very rigth!
I forgotten that I have switched the terminal to tsch to test somthing... so bash_profile was ignored.

Regards
Giovanni

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

Lien de la discussion autour du générateur de borniers.
https://qelectrotech.org/forum/viewtopic.php?id=1486

Développeur QElectroTech

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

L'export de la nomenclature à été totalement réécrit.

-Il est maintenant possible de choisir quelle informations exporté ainsi que l'ordre dans lequelle celles ci doivent être affiché.
-Une option permet de filtrer par type d'élément : tous, bornier, bouton/commutateur.
-Une autre option permet d'afficher ou non les en-têtes de colonne dans le fichier csv.
Avec ces option, il est possible de crée une nomenclature, une liste de commande, mais aussi pour l'impression des labels : liste des borniers et liste des boutons  / commutateurs.
-Il est possible d'enregistrer/charger une configuration facilement.
Enfin le travail étant effectué par une base de donné SQLite, un champ de texte permet à l'utilisateur de crée sa propre requête SQL.

Développeur QElectroTech

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

Super boulot  Joshua !
J'ai fait un test rapide et c'est super cool !
Voici quelques remarques:
- il serait pratique que le double clique sur un élément de la liste des informations disponible à gauche ajoute l'éléments à doite et vice versa
- la sauvegarde de configuration est un peu déroutante mais très pratique. Quand on choisit une configuration enregistrée, c'est la requête SQL qui s'affiche et non l'affichage graphique qui indique le contenu de la configuration. Du coup la modification d'un configuration ou même juste la lecture de celle-ci n'est pas évidente au commun des mortel.
- certains entête de colonne sont en anglais.
- il y a pour moi un problème entre formule de label et label :si on choisit label, et que le label de l'élément est issu d'une formule de label, le champs reste vide. Il faudrait que le système indique le nom du label résultant de la formule. Je ne vois pas bien l'intérêt d'exporter la formule en elle-même....

Où sont stockées les configuration ? Projet ? Conf QET ? Comment en supprimer ?

La question que personne n'a encore posée : est-ce que la création d'un élément nomenclature va en découler ? Je suis en ce moment sur un projet où j'ai beaucoup de plans à créer et cela m'éviterait de les générer à la maison avec mon script bash....

Merci pour ce beau travail !

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

Galexis wrote:

Où sont stockées les configuration ? Projet ? Conf QET ? Comment en supprimer ?

laurent@debian:~/.qet$ cat bill_of_materials.json 
{
    "test": {
        "header": true,
        "query": "SELECT formula, label, plant, location, comment, function, tension_protocol, auxiliary1, auxiliary2, description, designation, manufacturer, manufacturer_reference, machine_manufacturer_reference, supplier, quantity, unity, pos, folio_title, folio_pos, folio_num, designation_qty FROM bom ORDER BY formula, label, plant, location, comment, function, tension_protocol, auxiliary1, auxiliary2, description, designation, manufacturer, manufacturer_reference, machine_manufacturer_reference, supplier, quantity, unity, pos, folio_title, folio_pos, folio_num, designation_qty"
    },
    "test2": {
        "header": true,
        "query": "SELECT pos, folio_title, folio_num, formula, label, plant, location, comment, function, tension_protocol, auxiliary1, auxiliary2, description, designation, manufacturer, manufacturer_reference, machine_manufacturer_reference, supplier, quantity, unity, designation_qty FROM bom ORDER BY pos, folio_title, folio_num, formula, label, plant, location, comment, function, tension_protocol, auxiliary1, auxiliary2, description, designation, manufacturer, manufacturer_reference, machine_manufacturer_reference, supplier, quantity, unity, designation_qty"
    }
}

"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.8

Joshua wrote:

L'export de la nomenclature à été totalement réécrit.

.....
-Il est possible d'enregistrer/charger une configuration facilement.
Enfin le travail étant effectué par une base de donné SQLite, un champ de texte permet à l'utilisateur de crée sa propre requête SQL.

Pour ajouter un filtre dans la requête SQL, exemple n'exporter que les éléments qui ont un nom de fabricant non vide:

SELECT folio_num, folio_pos, pos, label, description, manufacturer, machine_manufacturer_reference, quantity FROM bom ORDER BY folio_num, folio_pos, pos, label, description, manufacturer, machine_manufacturer_reference, quantity

ajouter:

WHERE manufacturer<>""

après "FROM bom" et avant "ORDER BY", ce qui donne:

SELECT folio_num, folio_pos, pos, label, description, manufacturer, machine_manufacturer_reference, quantity FROM bom WHERE manufacturer<>"" ORDER BY folio_num, folio_pos, pos, label, description, manufacturer, machine_manufacturer_reference, quantity

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

scorpio810 wrote:
Galexis wrote:

Où sont stockées les configuration ? Projet ? Conf QET ? Comment en supprimer ?

laurent@debian:~/.qet$ cat bill_of_materials.json

Json ? C'est du Java cette partie ?

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

https://www.json.org/json-fr.html

Il est facile à lire ou à écrire pour des humains. Il est aisément analysable ou générable par des machines.

JSON est un format texte complètement indépendant de tout langage, mais les conventions qu'il utilise seront familières à tout programmeur habitué aux langages descendant du C, comme par exemple : C lui-même, C++, C#, Java, JavaScript, Perl, Python et bien d'autres. Ces propriétés font de JSON un langage d'échange de données idéal.

"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.8

Galexis wrote:

il serait pratique que le double clique sur un élément de la liste des informations disponible à gauche ajoute l'éléments à doite et vice versa

https://git.tuxfamily.org/qet/qet.git/c … 32000528b4

"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.8

scorpio810 wrote:

https://www.json.org/json-fr.html

Il est facile à lire ou à écrire pour des humains. Il est aisément analysable ou générable par des machines.

JSON est un format texte complètement indépendant de tout langage, mais les conventions qu'il utilise seront familières à tout programmeur habitué aux langages descendant du C, comme par exemple : C lui-même, C++, C#, Java, JavaScript, Perl, Python et bien d'autres. Ces propriétés font de JSON un langage d'échange de données idéal.

Ok !

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

C'est plus facile à lire pour un humain que le XML.. nomicons/wink

"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.8

Double clic -> OK nomicons/wink

Galexis wrote:

- la sauvegarde de configuration est un peu déroutante mais très pratique. Quand on choisit une configuration enregistrée, c'est la requête SQL qui s'affiche et non l'affichage graphique qui indique le contenu de la configuration. Du coup la modification d'un configuration ou même juste la lecture de celle-ci n'est pas évidente au commun des mortel.

Oui j'y avais pensé mais avais laisser tel qu'elle car demandais plus de boulot, et je me suis dit que si le besoins s'en faisais ressentir on ne manquerais pas de me le dire nomicons/wink
Je vais donc corriger ça pour les requêtes crée depuis le dialogue, pour les requêtes perso le comportement sera le même.

Pour les autres demande, c'est du détails ce sera corrigé.

galexis wrote:

La question que personne n'a encore posée : est-ce que la création d'un élément nomenclature va en découler ? Je suis en ce moment sur un projet où j'ai beaucoup de plans à créer et cela m'éviterait de les générer à la maison avec mon script bash....

Non !!
Plus sérieusement, la nomenclature ne sera pas crée depuis ce dialogue car dédié à l'export.
En revanche du code sera probablement partagé (la bdd), et j'ai des nouvelles idées sur les fonctionnalitées à ajouter. D'ailleurs il faudrait que je mette à jours mes idée ici https://qelectrotech.org/forum/viewtopic.php?id=1489

Développeur QElectroTech

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

scorpio810 wrote:

C'est plus facile à lire pour un humain que le XML..

Et aussi à coder, moins verbeux que le xml, et c'est très adapté pour ce genre de choses à stocker.

Développeur QElectroTech

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

Merci Joshua !

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

Bonjour,

pour ceux que ça intéressent "déploiement réseau", Christophe Admin du site MyEleec a crée un package MSI de QET :

https://www.myeleec.fr/deployez-qelectr … ir-du-msi/

"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.8

WebAssembly is a binary format that allows sand-boxed executable code in web pages. This format is nearly as fast as native machine code, and is now supported by all major web browsers.

Qt for WebAssembly is a platform plugin that lets you build Qt applications, which can be integrated into your web pages. It doesn't require any client-side installations and reduces the server-side resource usage.

FYI, The first tests with Qt_for_WebAssembly show that QET can work from a browser on a remote web server but the road is still full of pitfalls ... for now only QET 0.5 and 0.6 compile it, I have some problems for 0.7 and 0.8 with compiling wasm on externals KF5 addons ..
For now no loading collection and not saving.. https://doc.qt.io/qt-5/qfiledialog.html … ileContent
And 0.6 seems freeze ..

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