Page 1 sur 1

[Calc] Sélecteur de date

MessagePublié: 17 Fév 2020 10:34
par Hubert Lambert
Bonjour,

Pour faire suite (un peu tardivement, désolé) à la suggestion de micmac dans ce fil, je vous propose ci-dessous une petite extension baptisée calCalc.
Une fois installée, elle permet d'afficher, en effectuant un ctrl+clic droit (cmd⌘+clic droit sous MacOS), un sélecteur de date sous forme d'un petit calendrier pop-up, similaire à celui qui est disponible avec le contrôle de formulaire "Champ de date".
Si la cellule n'a pas été formatée par l'utilisateur, l'extension appliquera le format de date par défaut.

calCalc_fr.png

L'extension ci-dessous est disponible en français uniquement, mais fonctionne aussi bien sur LibreOffice que sur OpenOffice.
Si vous avez besoin d'utiliser cette extension dans un environnement linguistique différent, je vous conseille alors une version plus aboutie, disponible sur cette page. Celle-ci ne fonctionnera toutefois pas sur OpenOffice ou sur les versions de LibreOffice antérieures à la 6.2*. Dès que possible, une page dédiée sera également disponible sur le site des extensions de LibreOffice.

Cordialement.

* Cette version est "auto-localisée" en reprenant les chaînes de caractères internes à LibreOffice, ce qui n'est possible qu'avec les dernières versions du programme.

 Ajout : 4.5.2020. Comme promis, l'extension est désormais disponible sur le site officiel de LibreOffice : extensions.libreoffice.org/extensions/calcalc  
ou depuis la page gitlab du projet : gitlab.com/jmzambon/calcalc

Re: [Calc] Sélecteur de date

MessagePublié: 24 Fév 2020 10:17
par Dude
Salut,

Pas la peine de créer un tableau en dur pour le nom de chaque mois.
Les mois et les les jours sont disponibles dans les listes prédéfinies de Calc.
Tu peux utiliser le service ConfigurationProvider pour les récupérer : viewtopic.php?f=8&t=61590

Bonus : un logo pour ton extension

Re: [Calc] Sélecteur de date

MessagePublié: 24 Fév 2020 12:09
par Hubert Lambert
Salut,

Merci pour l'info... et pour le logo ! :wink:.
Dans la version purement francophone, le tableau en dur ne pose pas de problème, au contraire.
Dans la version internationalisée (voir le lien dans le message initial), les valeurs pour chaque langue sont récupérées grâce au service css.i18n.LocaleCalendar
Code : Tout sélectionner   AgrandirRéduire
        localecalendar = smgr.createInstance("com.sun.star.i18n.LocaleCalendar")
        localecalendar.loadDefaultCalendar(locale)    # is "gregorian" always the default?
        UI_STRINGS['months'] = [""]+[m.AbbrevName for m in localecalendar.Months]
        UI_STRINGS['firstday'] = f = localecalendar.FirstDayOfWeek
        days = localecalendar.Days2[f:]+localecalendar.Days2[:f]
        UI_STRINGS['days'] = [d.NarrowName for d in days]

Cordialement.