Gonzague

Tak suka wanita gemuk ! le blog de Gonzague.

HomeDash: Neuf mois plus tard

Samedi 4 avril 2015 à 4:30

Ça fait déjà presque un an que je travaille sur ce projet à petites doses (pas plus de 3 heures par semaine) et beaucoup de choses ont changées. D’une ça ne ressemble plus du tout à ce que ça ressemblait au début maintenant c’est beaucoup plus graphique avec des images et des petites animations ici et là. Certains trouveront sûrement plus agréable la première version que j’avais présenté mais je me suis rendu compte à l’usage que ça en devenant ennuyant quand on lance cette page tous les jours… Ca manquait clairement de vie.

Donc voilà à quoi ça ressemble:

Et en version mobile:

Fonctionnalités

Au niveau des fonctionnalités j’ai ajouté pas mal de choses. Comme par exemple la possibilité d’avoir plusieurs pages pour éviter de se retrouver avec un bordel monstre sur une seule page si on a beaucoup de modules. La selection de la page est toute simple, un clic sur l’icône en haut à droite et la liste des pages disponibles apparaît.

J’ai également ajouté la possibilité d’utiliser un module d’une installation tierce de HomeDash, très utile quand on a plusieurs serveurs. Ca se fait très simplement, chaque instance possède une clé pour l’API. Il suffit donc d’aller sur la page d’ajout de module distant entrer l’adresse et la clé de l’instance et la liste des modules disponibles apparaît avec les informations de chaque module pour savoir ce qu’on ajoute.

Un clic sur le module qu’on veut ajouter et voilà. Il est facile de différencier un module distant d’un module local grace à l’icône et le nom du serveur qui apparaissent ne haut à droite.

J’ai également revu le system de grille pour positionner les modules et j’utilise maintenant gridster.js. Ca marche relativement bien, un clic sur l’engrenage en haut à droite et il n’y a plus qu’à glisser/déposer les modules.

Les modules peuvent également envoyer des notifications via Pushbullet (le seul géré pour le moment) par exemple quand mon IP change et que le module de DNS dynamiques met à jour mon IP chez OVH je vais recevoir une notification.

Modules

Je commence à avoir une bonne quantité de modules qui peuvent être intéressant pour certains d’entre vous. Il y a les classiques modules de statistique du serveur avec l’utilisation du CPU/RAM et du disque dur:

Un module pour voir les prochaines épisodes des séries qu’on suit via Sickbeard ainsi qu’un module pour ajouter des films à Couchpotato facilement:

Un module pour gérer ses torrents si on utilise Transmission:

Un autre pour gérer ses photo sur Lychee, un logiciel pour gérer ses photo qui est assez sympa et facile à installer:

Un module pour controller un ampli Yamaha:

Et on va finir par les deux modules qui permettent de gérer les ports d’un routeur via UPnP et l’autre de mettre à jour son IP aux fournisseurs de DNS dynamiques (ovh, no-ip.org et Dyn.com sont gérés pour le moment):

Il y a d’autre modules comme Twitter, une representation du dock sur mac et afficher un calendrier public Google, mais je vais vous épargner les captures d’écran.

Au final je suis très content de mon boulot, ça marche vraiment bien, c’est super pratique (exactement la raison pour laquelle  j’ai commencé à le developper) et c’est stable, je l’utilise au quotidien et je n’ai jamais de crash. La partie visuelle gagne à être encore améliorée car c’est encore loin d’être parfait.

C’est disponible sur GitHub avec un tuto pour l’installation et l’utilisation.

Maintenant que j’ai abouti à la version 1.0 je vais faire une petite pause et m’atteler à une autre idée de projet relativement différente !

Bisous !

Home Dash: Ouvrir les ports d’un routeur

Vendredi 15 août 2014 à 7:07

Petit ajout rapide mais pratique dans mon logiciel, un plugin permettant d’ouvrir les ports d’un routeur via UPnP, ça permet de se passer d’aller bidouiller le routeur et de voir ce qui se passe.

C’est relativement simple et ça ressemble à ça:

La partie cachée à côté du nom du routeur est l’adresse IP externe.

Le tout est évidemment à jour sur le Github.

Dev Compulsif #471-3

Vendredi 8 août 2014 à 16:02

Quelques ajouts vite fait depuis le dernier article:

  • On peut maintenant choisir le(s) point(s) de montage pour les information système, utile quand on a plusieurs disques.
  • Ajout d’un plugin qui permet de visualiser les événements prochains d’un calendrier public de google, un clic sur un des événements permets de voir les details.

Le tout s’est fait assez rapidement donc je suis plutôt content de l’architecture du projet qui permet de faire des modifications facilement. C’est à jour sur GitHub si vous voulez y jeter un oeil.

Bisous !

Dev Compulsif #471-2

Mardi 5 août 2014 à 15:59

Pas mal de progrès ont été fait depuis mon dernier article:

1) Code plus propre

2) Ajouts de liens pour pouvoir modifier un module existant

3) Utilisation de SQLite, ce qui permet d’éviter de se coltiner une base de donnée MySQL ou autre, mais il est toujours possible de configurer une base mysql dans le fichier conf/application.conf

4) Ajout d’un module Couchpotato pour ajouter un film très rapidement:

5) Transmission: Possibilité de voir le progrès en octets et une icône pour voir le status du téléchargement.

6) Petites améliorations de l’interface à droite à gauche.

À faire:

1) Améliorer le plugin transmission pour pouvoir mettre en pause/arrêter un téléchargement

2) Faire la grande version de couchpotato et sickbeard pour ajouter un film/series tout en pouvant choisir la qualité.

3) Faire un plugin pour FTPix

4) Trouver un moyen pas trop contraignant pour protéger d’un mot de passe.

J’ai mis mon code source sur github: https://github.com/lamarios/HomeDash

Bisous.

Dev compulsif #471

Mardi 29 juillet 2014 à 11:52

Une fois de temps en temps, il me prend une envie de créer un logiciel souvent parce que je trouve pas ce que je veux, ou tout simplement parce que j’ai découvert un nouveau framework/technologie. Coup de bol ce coup-ci les deux options étaient validées.

Ma simple installation informatique  se résume à ça:

  • Un mac mini qui sert de serveur / HTPC / téléchargements
  • Couch potato / sickbeard sur le mini
  • Un ampli

Le tout relié à une TV évidemment. Tout ce beau monde à plein de fonctionnalités sympa qui par chance se contrôlent la plus part via des applications ou sites web.

Usages communs:

  • Je me lève le matin, pour mettre un peu de musique depuis mon lit je dois lancer l’application de l’ampli, l’allumer, lancer l’application iTunes Remote et choisir ma musique.
  • Je veux ajouter un téléchargement, lancer la version web de transmission, entrer mot de passe coller le lien.
  • Voir quand le prochain épisode de ma super série préférée, je dois aller sur sickbeard, m’identifier, clicker sur le lien pour voir la liste des prochains épisodes.
  • Ma copine veut regarder ses series en streaming mais je télécharge donc il faut réduire la vitesse des téléchargements, lancer site web, identification, cliquer bouton.
  • etc…

Le problème: Il faut changer 30 fois d’application pour arriver à faire ce qu’on veut.

La solution: On est jamais mieux servis que par soi-même.

Ce week-end étant un long week-end dans le coin je me suis lancé. J’ai découvert playframework il y a quelques temps et il m’intriguais beaucoup donc voila l’occasion rêvée de s’en servir.

Le but que je me suis fixé est d’avoir tous ce dont je me sers régulièrement sur un seul écran avec les fonctions que j’utilise le plus en accès très rapide.

Après quelques heures de recherches et de bricolages:

Et c’est également compatible avec les plateformes mobiles vu que c’était mon but principal:

Je suis encore loin de tout avoir terminé, mais l’essentiel est la. Il me reste surtout le plugin pour iTunes.

Chanque plugin peut s’afficher en grand si il le permet, on peut le voir a droite de “Transmission” il y a deux petites flèches, un clic plus tard on est sur la version détaillée du plugin:

Évidemment il est possible de changer la largeur des modules ainsi que leur position.

Le tout tourne donc en java/scala avec PlayFramework qui est vraiment simple et plaisant à utiliser tout coule plus ou moins de source.

Pour éviter d’envoyer des requêtes toutes les secondes vers le serveur, j’utilise un serveur WebSocket pour tout ce qui est acquisition des données, ainsi que pour envoyer des commandes. Le principe est relativement simple un WebSocket est ouvert en permanence côté serveur, dès qu’un client s’y connecte l’acquisition des données commence. Chaque plugin dispose de son propre taux de rafraichissement… Inutile de rafraîchir la liste des épisodes  à venir toutes les secondes.

S’il n’y a plus de client sur le WebSocket évidemment tout s’arrête en attendant qu’un nouveau se connecte.

La communication se fait aussi du client vers le serveur toujours en passant par le websocket en envoyant l’id du plugin, une méthode et des paramètres, le serveur va rediriger tout ça vers le plugin adéquate qui va exécuter la commande et envoyer la réponse aux clients.

Ce qu’il me reste à faire:

  • Plugin pour iTunes qui s’annonce relativement compliqué
  • Plugin pour couchpotato (j’ai pas trop regardé s’il y avait une API)
  • Améliorer sickbeard pour pouvoir ajouter des séries facilement.
  • Ajouter tout ce à quoi je peux penser

Pour conclure PlayFramework c’est cool, les Websocket aussi, le tout marche plutôt très bien et ce fut assez facile à mettre en place !

FTPix 3, suite.

Lundi 3 décembre 2012 à 13:35

Il y a plus d’un an j’avais fait un article à propos de FTPix 3. J’avais de bonnes intentions, mais je me suis rendu compte quelques temps après qu’il y avait quelques problèmes de conceptions et l’interface ne me plaisait pas trop, ensuite mon boulot devient relativement prenant niveau temps  puis [ajouter toutes les excuses du monde que vous voulez]…

Bref, finir ce FTPix 3 me trotte régulièrement en tête donc un beau jour, je m’y suis remis et j’ai tout recommencé de zéro en posant bien les choses pour les bases du logiciel pour éviter le même problème qu’a ma tentative précédente.

Donc j’ai toujours pour plan de permettre d’autre moyens d’uploader des images en + du FTP histoire de pouvoir toucher plus de personnes. Le problème que j’avais rencontré avec ma tentative précédente et que je m’étais fixé deux tailles de miniatures (150 et 600px) et qu’au final ça allait être difficile à mettre en place si je voulais plusieurs moyens d’envoyer des images, j’ai donc revu ma structure de donnée et en gros une image peut avoir n’importe quel nombre de miniatures.

Pour le moment j’ai développé deux moyen d’upload différents, le FTP et imageshack. Le FTP n’a aucune contrainte concernant la taille des images donc j’ai fait en sorte que ce soit configurable, si je veux avoir des miniatures de 100, 350 et 760 pixels en plus de l’image originale, c’est possible. L’image ci-dessous est la fenêtre de configuration d’un serveur FTP

Pour imageshack la fenêtre est différente, Imageshack n’authorize pas vraiment de choisir la taille des images bien qu’une option soit présente dans l’API, mais je n’ai pas réussi à la faire marcher, dans ce cas, j’envoie simplement l’image originale sur imageshack et ils me renvoient l’adresse de l’image ainsi que l’adresse de la miniature de 100px dans ce cas. Donc forcément la fenêtre de configuration est moins chargée.

Maintenant qu’il est possible de configurer plusieurs types d’uploader, l’idéal est de pouvoir en sauvegarder plusieurs.

Et on peut changer d’uploader sur la fenêtre principale:

Pour le coup, j’ai décidé que chaque uploader aurait sa propre sauvegarde, c’est à dire que que dans mon cas, j’aurais une liste d’image sur mon FTP (nas sur le screen) et une sur imageshack, si je change de l’un à l’autre la liste d’image se recharge pour afficher les images correspondantes.

J’ai décidé d’enlever la fenêtre des uploads des précédentes version. et de mettre la progression directement sur les miniatures :

J’ai fait une petite vidéo pour l’occasion histoire de montrer ce à quoi ça ressemble en mouvement:

YouTube Preview Image

Voila, je vous tiendrais au courant des avancements.

Bisous.

Équivalent Weplay pour Diablo 3

Vendredi 6 avril 2012 à 17:04

Diablo 3 arrive très bientôt mais en jouant à la beta, il y a un truc qui m’a un peu gêné, c’est l’explorateur de parties, c’est simple il n’existe plus.

On choisi une quête et le jeu nous trouve une partie. Dans Diablo 2 on pouvait choisir la partie et voir qui y était, ça permettait par exemple d’éviter les parties  en normal avec des niveau 80+ qui buttent tout sans qu’on puisse apprécier faire les quêtes tranquillement. De plus qu’avec les promesses de Blizzard comme quoi maintenant les rushs (baalruns, cs runs …) c’est fini et que pour avoir une partie rentable il fallait vider tout un acte en entier (ou au moins ses élites), les parties seraient à priori beaucoup plus longues.

À partir de toutes ces affirmations une petite idée m’est venue en tête. Le principe de Weplay est vraiment sympa pour organiser des parties. C’est intuitif et direct ! On s’inscrit pour une partie à telle date, le jour J on arrive on lance le jeu et on joue, j’ai donc décidé de faire un site exploitant la même idée mais uniquement pour Diablo 3 et ses spécificités.

Le site se divise en deux parties , la première est un outil pour rechercher une partie, la seconde est pour gérer ses personnages.

La partie personnage est très simple, on crée son personnage, on le met à jour et c’est tout…

Les persos sont classés par royaumes, un clic sur le personnage pour le mettre  à jour (niveau) ou le supprimer.

Blizzard ayant annoncé qu’une D3 API serait lancée plus tard, ça facilitera d’autant plus la tâche (Un équivalent de l’armurerie de WoW).

La deuxième partie est la gestion des parties. C’est encore une fois relativement simple. On crée une partie, on détermine l’heure , on choisi les options qu’on veut et on sélectionne son personnage . La liste des personnage se rafraîchie selon les options choisies, ne sont donc affichés que les personnages pouvant participer à cette partie.

Dans la colonne de droite on peut choisir les joueurs qu’on veut pour notre partie, soit n’importe quelle classe, soit une classe précise ou alors fermer l’emplacement.

Il est également possible de créer une partie privée qui n’apparaîtra pas dans le moteur de recherche et sera accessible uniquement via son URL (à l’instar d’une vidéo Youtube)

Une fois la partie créée, elle apparaît dans la recherche, la colonne de droite indique toutes les parties à venir ou récemment terminées où l’on a un personnage qui participe. Chaque partie à jusqu’à quatre icônes pour la représenter selon les classes choisies ou celle des joueurs dans la partie. Une icône transparente pour une place libre et opaque quand un joueur occupe cette place. L’icône des mercenaires est la quand la classe de l’emplacement de joueur n’a pas été spécifié.

La première partie de la colonne de droite est celle que j’ai créée précédemment, donc 3 joueurs dont moi + un babare + n’importe quelle classe.

Sur cette même page on peut rechercher une partie selon nos propres critères et y voir les places disponibles également.

En cliquant sur une partie on arrive sur la page suivante :

On peut y voir tous les détails de la parties, des joueurs avec les gamertags battle.net entre parenthèses visible uniquement si on a rejoint la partie. Il y à aussi un chat pour les participants uniquement histoire de discuter un peu avant de se lancer dans le bash de mobs.

Ci-dessous la même page mais quand on ne fait pas partie du groupe:

Pour chaque slot où on possède au moins un personnage qui rempli les critère il y a un menu déroulant pour choisir le personnage qu’on veut faire participer.

Plus tard il y aura des notifications par e-mail pour prévenir le joueur quelques heures avant que la partie commence.

Voilà pour l’instant c’est tout ce qu’on peut faire. Je vous invite à y faire un tour pour tester, me dire ce que vous en pensez et me trouver des bugs, c’est encore en développement (et bourré de fautes de frappe) et disponible ici: http://d3parties.ftpix.com

C’est à ce moment que je peux faire mon appel à l’aide. Je recherche un designer pour faire l’interface graphique du site. Pour l’instant il n’y a rien à gagner si ce n’est une ligne sur un portfolio. Si jamais il y a moyen de monétiser le site (pubs ou autres) je partagerais bien évidemment les gains.

Équivalent Dropbox avec Unison: l’application.

Mercredi 7 décembre 2011 à 15:44

unibox

Cet article fait suite au précédent article expliquant comment créer un équivalent Dropbox avec Unison. Ayant un peu avancé sur l’application, l’article va se focaliser dessus.

L’application est vraiment très simple, on choisi son profil unison et c’est parti. J’ai voulu ajouter un peu plus de flexibilité, jusqu’à maintenant j’utilisais la location par defaut d’Unison, ce qui peut poser problèmes dans certains cas. J’ai donc fait une petite fenêtre se lançant via le menu de l’icône du systray qui permet de préciser où est l’exécutable. Unison nécessitant d’avoir la même version entre les deux sources, j’affiche également la version de l’éxecutable.

unibox

unibox

Si jamais il y a un problème le bouton “Detailed log” permet d’en savoir un peu plus.

Histoire de pousser le vice un peu plus loin pour par exemple les utilisateurs qui synchronisent sur des serveurs différents ayant des versions différentes d’Unison, je permet également de préciser un exécutable particulier pour chacun des profils synchronisés, J’utilise la même fenêtre avec un titre different mais cette fois-ci se lance avec un clic droit sur le profil.

unibox

unibox

Le principe reste le même.

Dans la section petit détail, j’affiche une icône dans le systray différent si une synchronisation est en court. L’icône bleue pour Windows / Linux, la noire pour Mac OS X

unibox unibox unibox unibox

Pour finir, je ne compte pas trop développer cette application, car ça ne va vraiment pas toucher énormément de monde, il me reste à faire un mini site et une fonction pour détecter les mises à jours ensuite, je me contenterais de corrections de bugs seulement.  Je posterais un nouvel article pour le téléchargement quand ça sera prêt.

Cet article fait suite à précédent article que j’avais écrit sur le sujet.

Ma précédente tentative en utilisant unison n’était pas super convaincante car je m’y prenais mal, ça me scanait mes 50Go de données à chaque synchronisation et c’était “un peu” lent… ok très long.

Après de longues tentatives avec des trucs genre GoodSync, Git, SVN et j’en passe, je suis tombé sur plusieurs articles (ici et ici) qui expliquent comment bien faire les choses avec unison. Et ça marche ! Mais… comme il y a toujours un mais ces articles précisent d’utiliser un script en python qui guette si il y a un changement dans le dossier, mais il y a deux problèmes.

  • La detection des changements au sein du dossier à synchroniser est un peu hasardeuse (sur mes macs tout du moins)
  • De cette manière on ne peux pas lancer une synchro à intervalles réguliers, et unison ne conseille pas de lancer deux synchros simultanées sur le même ordi avec le même profile.

Donc on a au choix, soit au changement dans les fichiers uniquement, soit à intervalles réguliers. Le premier choix est éliminé car si on a plusieurs ordinateurs actifs qui se synchronisent avec le dossier on est niqué car si un des ordis fait un changement, il sera bien envoyé au serveur mais le deuxième ne le recevra que quand il y aura un changement dans ses fichiers du même dossier. Le deuxième choix est donc préférable, mais si on veut qu’un fichier se propage rapidement on est niqué aussi.

Donc j’ai re-developé mon application “UniBox” qui permet de gérer les deux (écoute du dossier et synchro régulière) à la fois. Pour l’instant elle ne fonctionne que sous OS X et sans doute sur linux. Sur windows, je ne sais pas, j’ai pas testé mais je doute que ça marche. On a donc une petite icône dans la barre de menu en bonus donc pas d’encombrement de l’écran car tout peut se faire en fond. L’appli est maintenant une sorte de wrapper autout d’unison, c’est à dire que j’utilise également les fichiers de profile d’unison. L’appli proposant un petit assistant pour les gérer (créer, modifier, supprimer).


unibox

unibox

L’interface permet également, contrairement à la première version, de synchroniser plusieurs dossiers, de voir ce qui se passe lors de la synchronisation et propose un bouton qui permet d’ouvrir le dossier dans l’explorateur de fichier.

On à donc un joli dropbox sans limite de stockage qui fonctionne plutôt bien.

Mais ce serait vraiment trop facile de s’arrêter en si bon chemin…

Histoire de pousser le vice un peu plus loin, je me suis demandé comment faire si par exemple je débarque chez un pote et que j’ai besoin d’un des fichiers de mon “unibox” mais que mon pote n’a pas unison et qu’il n’a de toutes façon pas spécialement envie de synchroniser 50Go pour un seul fichier/dossier ?

Et bah c’est très simple. Sachant que unison garde une copie intacte du dossier (non compressée) sur le serveur, on va donc installer un explorateur de fichiers web. J’ai personnellement opté pour AjaXplorer. Mais pour faire les choses bien, il faut penser à quelques trucs.

  • Le dossier doit être disponible en lecture et écriture sur le serveur par l’utilisateur/groupe utilisé par apache sinon, on ne peux pas uploader via l’interface web
  • Du coup, unison doit être lancé en se connectant en ssh via ce même utilisateur/groupe utilisé par apache sinon les fichiers uploadés via unison ne seront pas modifiable, effaçable  via l’interface web.

Bon, alors pourquoi est-ce que j’ai choisi AjaXplorer ? Tout simplement parce que c’est le premier sur lequel je suis tombé et qu’il offre des possibilités sympa. On peut par exemple télécharger un dossier entier d’un coup, mais là où ça défonce, c’est qu’il est possible de partager les fichiers (ça demande un peu plus de configuration cependant) via un lien public protégé où non par un mot de passe, et pour une durée déterminée ou non.

Il est également possible de partager un dossier entier, pour cela ajaxplorer va nous demander de créer un utilisateur qui n’aura accès qu’au dossier qu’on souhaite partager et donner à cet utilisateur des droits de lecture  et d’écriture ou non. Donc tout ce qui se passe sur la version Web sera propagé dans les dossiers respectifs des ordis synchronisés sur ce dossier.

unibox

AjaXplorer possède également une application iOs qui permet de parcourir ses fichiers sur le serveur et d’uploader des photos de son iPhone/iPad/iPod.

On a donc une solution vraiment complète en main qui couvre tout ce que fait Dropbox (excepté le versionning). Ça demande un peu de temps et de connaissances pour tout mettre en place mais au final, ça permet d’économiser $200 par an (pour les gros consommateurs) et d’avoir vraiment le contrôle sur ses propres fichiers.

P.S: Les près-requis de mon précédent article sont toujours valables.

FTPix v3: Le retour de la vengeance !

Dimanche 26 juin 2011 à 16:08

C’est reparti pour un tour ! Après cette année et demi de FTPix v2 il était temps de passer à l’étape suivante. Donc c’est une réécriture de 0 encore une fois, pour plusieurs raisons:

  • Le code de la v2 est bordélique, moins que la v1 mais ça reste un gros bordel qui au fur et à mesure des features était devenu difficilement modifiable.
  • Ca fait un an que je bosse en tant que dév JAVA contrairement à mon précédent job où j’étais web dev, du coup j’ai appris énormément de choses depuis donc je veux les appliquer.
  • Mettre à jour l’interface car durant cette année et demi d’utilisation, je me suis rendu compte de quelques problèmes, réparer ça aurait été relativement long et fastidieux à mettre en place sur la v2 car ce ne sont pas des bugs mais des trucs chiants à l’utilisation.

Il n’y aura pas énormément de nouveautés majeures enfin il y en aura une en tout cas qui fera plaisir à pas mal de monde je pense, je ne vais plus limiter FTPix au FTP seul ! Au fil du développement je vais ajouter différentes façons d’uploader les images je n’ai pas d’exemple précis en tête mais pourquoi pas des services d’images en lignes, j’ai contacté le doc pour envoyer vers pix.wefrag.com mais pas de réponse pour l’instant. Les plus gros changements interviendront surtout dans le coeur du logiciel, c’est (vraiment) plus rapide et c’est ça l’important ! J’ai revu la gestion de la queue d’événement (upload, synchronisations etc…) de fond en comble. Je vais maintenant migrer toutes les données au format SQLite (je l’avais déjà fait pour les images sur la v2.4) et vraiment me servir des avantages du format pas comme précédemment. Le code est beaucoup plus propre et flexible, l’interface est ce coup-ci vraiment indépendente du corps du logiciel donc facilement modifiable. D’ailleurs, au niveau de l’interface pas mal de changements, déjà une des plus grosse merde de la v2 l’affichage des images par pages de 100 images. C’était nul, mais à l’époque j’avais pas trouvé de méthode décente de faire ça sans que ça rame ou prenne  trop de ressources. Maintenant toutes les images sont affichées ! (l’icône des galeries n’est pas encore faite)

ftpix v3

Deuxième gros changement de l’interface, plus de petites fenêtres indépendante pour les images, c’était chiant à gérer (surtout sous windows) pour l’utilisateur des qu’on voulait en ouvrir plusieurs. J’affiche également tous les images lors d’une sélection de plusieurs images. La petite barre d’outils permets de centraliser toutes les actions possibles sur les images (ouvrir dans le navigateur, effacer, télécharger, ajouter à une galerie, annoter), l’ordre des icônes n’est pas l’ordre définitif

ftpix v3

Plus de barre de status en bas, on peut toujours voir la progression, et le champ de recherche à changé de place. Il faudra désormais un clic pour le voir. Mais j’ai remarqué sur tous les gens que j’ai pu observer utiliser le logiciel se focalisaient surtout sur les images les plus récentes. Donc autant gagner quelques pixels de hauteur, et avoir un look un peu plus stylisé.

ftpix v3

J’ai également fait des tooltips plus sympa que les tooltips système par défaut.

Pour la barre de status, pour savoir ce qu’il se passe, ça marche à la manière de tool tips normaux, on passe la souris sur la mini barre (en bas à gauche) de progression et l’action en cours s’affiche. La fenêtre des upload à également été un peu modifiée pour voir la taille des fichiers envoyés et la progression en KB / MB

ftpix v3

Je ne sais pas encore quand le logiciel sera prêt, mais c’est sur la bonne voie, j’ai pas noté trop de bugs pour l’instant…  Depuis mon nouveau travail mon niveau de code à vraiment progressé, j’arrive à faire ce que je veux vraiment faire avec beaucoup plus de facilité et de performances qu’avant. Évidemment tout ce qui est montré ici est susceptible de changer j’en suis qu’au début du développement.

Le plus gros va être au niveau des galeries, je veux vraiment les rendre plus agréables à utiliser avec une interface beaucoup plus conviviale et comme je vais changer la façon de sauvegarder pour que ce soit plus rapide, le corps du code va également être sujet à de gros changements.

Bref, je vous tiendrais au jus sur ce blog comme je l’avais fait pour la v2. Évidemment je suis ouvert à toutes remarques concernant le logiciel pour le rendre le plus agréable possible à utiliser.