#44 False content type after preference edit

1.4pre
closed
None
5
2013-02-17
2009-02-25
No

If I have some drawing open, then I edit the preference, and if the content type of the drawing is not the prefered content type as per preference, then the content type of the drawing is silently changed (the displayed content type on the canvas window title remains the same, but any encoding of the drawing will used the preferred one instead).

Discussion

  • Vincent Belaïche

    Other issue is that chane the user has several drawing, and he/she select another drawing, the content type in the content type menu is not that of the current drawing.

    This is obscur : what is this menu for, isn't it to change the content type of the current drawing, thus the selected menu item should always be that of the current drawing.

    Note that in the preference there is already a "preferred content type" that is used for new drawings. Maybe there should be another item "[tick yes/no] override preferred with latest content type used in the same session"

     
  • Vincent Belaïche

    • assigned_to: nobody --> vincentb1
     
  • Vincent Belaïche

    Il y a plusieurs problèmes:

    1) ------------------
    L'action ContentTypeAction de JPicEdt change le ContentType également dans les préférences, et pas seulement sur la planche courante. Or, l'intitulé du menu est confusant "Format…" et non "Format préféré…" laisse entendre qu'on ne modifie que la planche courante. Il me semble qu'il faudrait changer seulement le format du document courant, parce qu'il est confusant de proposer à l'utilsiateur une même action ayant deux objet différent: l'un étant de modifier le format d'encodage de tout nouveau document, et l'autre étant de modifier le format d'encodage du document courant.
    Il est à noter que si on change le format de tout nouveau document via le panneau de préférence alors le format d'encodage du document courant n'est pas affecter. Cette façon de procéder me semble convenable, et confirme qu'il s'agit de deux choses différentes qu'il ne faut pas changer dans une même action.

    2) ------------------
    On accède à la toile et à la planche à dessin de deux façons différente: la planche à dessin est accédé via le MDIManager, et la toile via le ActionRegistry. En générale la toile est bien celle qui correspond à la planche, mais il peut en théorie y avoir des situations transitoire où ce n'est pas le cas. Il vaudrait mieux accéder à la planche courante, puis en dériver la toile qu'elle comprend, ainsi ça serait toujours cohérent.

    3) --------
    Le caractère isDirty de la planche n'est pas mis à jour, alors que changer le format d'encodage change le contenu du fichier.

    Je suggère de corriger les trois problèmes ci-dessus.

     
  • Vincent Belaïche

    Le premier point que j'avais mentionné à savoir "L'action ContentTypeAction de JPicEdt change le ContentType également dans les préférences" est en fait inexact.

    En réalité j'avais lu dans le code de ContentTypeAction.actionPerformed cette ligne:

        ctype.configure(preferences);
    

    que j'avais interprété comme changeant le contentType dans les préférences. En réalité cela ne fait que sélectionner le formatteur courant correspondant au contentType selectionné. La raison pour laquelle preference est passée en argument c'est que l'allocation du formatteur a besoin des préférences (mais en lecture seul) car le formattage peut dépendre de certaines préférence.

    Donc fausse alerte: il n'y a dans ContentTypeAction que les problème #2 et #3 de mon message précédent

    Je viens de régler ces deux problème de JPicEdt.ContentTypeAction
    dans jpicedt/jpicedt/JPicEdt.java v1.50

     
  • Vincent Belaïche

    Je ne suis pas arrivé à reproduire le problème initial, à savoir qu'une mise à jour du contentType préféré dans les préférences changerait subrepticement le contentType de la planche active.

    Par contre j'ai résolu le problème de ce que les actions ContentTypeAction n'était pas à jour dans les menu lorsque la planche active change:

    jpicedt/jpicedt/ui/MDIManager.java v1.28

    Ceci clôt le bogue.

     
  • Sylvain Reynal

    Sylvain Reynal - 2013-02-17
    • status: open --> closed
    • milestone: --> 1.4pre
     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks