[writer] Réinitialisation des styles

Bonjour,

(LibO 3.4.5 officiel sous Xubuntu 10.04)

je suis confronté à un petit problème que je n'arrive pas à résoudre de manière simple. Il s'agit d'héritage entre styles, plus précisément de remettre un style aux valeurs de son parent.

Voici de quoi reproduire :

(1) Dans un document j'ai modifié le style Titre 1 pour lui donner un effet de caractère "Titre" (Ce Qui Met Une Capitale Initiale À Chaque Mot Du Titre).

(2) Ensuite, je me rends compte de ma bourde : ce n'est pas Titre 1 qu'il fallait configurer ainsi mais Titre, parent des styles de titre, puisque j'aimerais que tous les styles de titre bénéficient de cette même modification.

(3) Je supprime donc le paramétrage de Titre 1 et configure Titre en conséquence.

... Et je constate que Titre 1 n'hérite pas cette propriété !

En témoigne d'ailleurs le libellé descriptif en bas de l'onglet Gérer de Titre 1 qui commence alors par "Aucun + Texte occidental (etc.)" alors qu'il devrait y avoir juste "Texte occidental (etc.)". Manifestement, en (2) le retour arrière n'est pas vu comme une annulation avec retour au style du parent mais comme une configuration qui demande "PAS d'effet de caractère".

L'action sur le bouton "Standard" dans Titre 1 est sans résultat.

Donc deux questions en une :

1. Comment revenir à l'héritage complet de façon simple ?

2. Ceci est-il également constaté sous Lib0 3.5 (que je n'ai pas sous la main pour l'instant) ?

Merci d'avance,

Bonsoir Jean-François,
J'ai fait l'essai que tu as demandé (avec Mageia 2 > LibO 3.5.0 : je n'ai pas reproduit ton pb. Par contre, as-tu vérifié ce qui ce passe dans l'onglet Gérer > Lié à ?
Amicalement, Philippe

Bonsoir Philippe,

J'ai fait l'essai que tu as demandé (avec Mageia 2 > LibO 3.5.0 : je
n'ai pas reproduit ton pb.

Donc, quand tu remets la propriété de Titre 1 à (sans), c'est bien celle qui est définie dans Titre qui se répercute ?

Par contre, as-tu vérifié ce qui ce passe
dans l'onglet Gérer > Lié à ?

Pas de pb, c'est bien Titre qui est le parent.

Merci pour le test.
Amitiés,

Bonsoir Philippe,

J'ai fait l'essai que tu as demandé (avec Mageia 2 > LibO 3.5.0 : je
n'ai pas reproduit ton pb.

Donc, quand tu remets la propriété de Titre 1 à (sans), c'est bien celle qui est définie dans Titre qui se répercute ?

Oui, d'ailleurs lorsque je modifie Mon Titre De Test dans Effets de caractères, dès que j'active de nouveau Effets (Sans) Mon titre de texte se remet normalement (au bas de la boîte de dialogue) avant même que je n'aies cliqué sur le bouton Appliquer

Par contre, as-tu vérifié ce qui ce passe
dans l'onglet Gérer > Lié à ?

Pas de pb, c'est bien Titre qui est le parent.

Ok

Bonsoir,

intrigué et intéressé, j'ai tenté et même topo sur
Mac OS 10.6.8
LibreOffice 3.5.0rc3
Version ID : 7e68ba2-a744ebf-1f241b7-c506db1-7d53735

l'effet de caractère dans le style parent ne se retrouve pas dans l'héritage.

Par contre, un changement de couleur sur le style Titre est bien répercuté vers les héritiers…

J'ai donc poursuivi mes tests, non sans quelque étonnement.
L'enfant Titre 2 hérite lui de la modification de son "parent", ainsi que les "enfants Titres" 3, 4, 5, 6, 7, 8, 9 et 10.
Titre 1 serait-il le "vilain petit canard" de la famille ?

C_Lucien

Non. Ce que j'ai trouvé pour Titre 1 peut se tester sur les autres.

re

j'ai fouiné dans le paquet zippé, dans le fichier style.xml

Le style parent "Titre" contient
<style:style style:name="Heading" style:family="paragraph" style:parent-style-name="Standard" style:next-style-name="Text_20_body" style:class="text">
<style:paragraph-properties fo:margin-top="0.423cm" fo:margin-bottom="0.212cm" fo:keep-with-next="always"/>
<style:text-properties fo:text-transform="capitalize" fo:color="#800000" style:font-name="Arial" fo:font-size="14pt" style:font-name-asian="Arial Unicode MS" style:font-size-asian="14pt" style:font-name-complex="Arial Unicode MS" style:font-size-complex="14pt"/>
</style:style>

Le style enfant Titre 1 contient
<style:style style:name="Heading_20_1" style:display-name="Heading 1" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:default-outline-level="1" style:class="text">
<style:text-properties fo:font-variant="normal" fo:text-transform="none" fo:font-size="115%" fo:font-weight="bold" style:font-size-asian="115%" style:font-weight-asian="bold" style:font-size-complex="115%" style:font-weight-complex="bold"/>
</style:style>

J'en comprends que
fo:text-transform="none" de Titre 1 annule fo:text-transform="capitalize" de Titre.

Or, aucun des autres styles ne contient ce forçage.

Exemple sur Titre 2
<style:style style:name="Heading_20_2" style:display-name="Heading 2" style:family="paragraph" style:parent-style-name="Heading" style:next-style-name="Text_20_body" style:default-outline-level="2" style:class="text">
<style:text-properties fo:font-size="14pt" fo:font-style="italic" fo:font-weight="bold" style:font-size-asian="14pt" style:font-style-asian="italic" style:font-weight-asian="bold" style:font-size-complex="14pt" style:font-style-complex="italic" style:font-weight-complex="bold"/>
</style:style>

Il y a d'autres différences, pas encore bien claires pour moi.

Cette différence de structure m'intrigue.

C_Lucien

Bonsoir,

1. Comment revenir à l'héritage complet de façon simple ?

Il me semble que c'est ce bug là :
https://www.libreoffice.org/bugzilla/show_bug.cgi?id=42763

J'ai ajouté un commentaire.

Merci pour votre aide.

Bonjour

Ce bug est ancien (déjà dans 2.4.2 par exemple).

Le contournement que j'avais trouvé :

- Créer un nouveau document
- Y mettre un paragraphe dans le style concerné (Titre1 donc)
- Utiliser Fichier> Modèles> Gérer pour copier le style du "nouveau
document" (il va écraser après confirmation)

Cordialement
Pierre-Yves

Bonjour

Ce bug est ancien (déjà dans 2.4.2 par exemple).

Argh ! Je n'avais jamais eu à traiter le cas... "Chance" ?

Le contournement que j'avais trouvé :

- Créer un nouveau document
- Y mettre un paragraphe dans le style concerné (Titre1 donc)
- Utiliser Fichier> Modèles> Gérer pour copier le style du "nouveau
document" (il va écraser après confirmation)

*très* bonne idée. Merci !