Package jaxe

Class JaxeElement


  • public abstract class JaxeElement
    extends java.lang.Object
    Elément Jaxe, représentant à la fois l'affichage graphique et l'arbre DOM correspondant (noeud)
    • Field Summary

      Fields 
      Modifier and Type Field Description
      java.util.ArrayList<javax.swing.text.Position> compos  
      javax.swing.text.Position debut  
      JaxeDocument doc  
      javax.swing.text.Position fin  
      java.util.ArrayList<java.lang.Object> jcomps  
      static java.lang.String kBarre  
      static java.lang.String kCouleur  
      static java.lang.String kCouleurDeFond  
      static java.lang.String kExposant  
      static java.lang.String kGras  
      static java.lang.String kIndice  
      static java.lang.String kItalique  
      static java.lang.String kSouligne  
      org.w3c.dom.Node noeud  
      org.w3c.dom.Element refElement  
    • Constructor Summary

      Constructors 
      Constructor Description
      JaxeElement()  
    • Method Summary

      All Methods Static Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      boolean aDesAttributs()  
      void afficherDialogue​(javax.swing.JFrame jframe)
      Affiche le dialogue correspondant à l'élément
      javax.swing.text.SimpleAttributeSet attStyle​(javax.swing.text.SimpleAttributeSet attorig)  
      boolean avecIndentation()
      Indique si les descendants de l'élément doivent être indentés
      boolean avecSautsDeLigne()
      Indique si des sauts de ligne doivent être ajoutés avant et après s'il n'y en a pas déjà
      void changerStyle​(java.lang.String style, int offset, int longueur)  
      java.lang.String cheminA​(int pos)
      Renvoit le chemin XML pour la position pos
      JaxeElement couper​(javax.swing.text.Position pos)
      Coupe un élément en 2, retourne le nouvel élément créé après celui-ci.
      void creer​(javax.swing.text.Position pos, org.w3c.dom.Node noeud)
      Initialise le champ noeud, met à jour dom2JaxeElement, et appelle init(pos, noeud)
      org.w3c.dom.Node creerEnfant​(javax.swing.text.Position newpos, org.w3c.dom.Node n)
      creer l'enfant n à la position newpos (avec JaxeElement.creer)
      void creerEnfants​(javax.swing.text.Position newpos)
      creer les enfants de ce noeud, en supposant que c'est un élément DOM
      void effacer()
      appelé juste avant que l'élément soit effacé
      JaxeElement elementA​(int pos)
      Renvoit l'élément de plus bas niveau se trouvant à la position donnée dans le texte
      java.util.ArrayList<JaxeElement> elementsDans​(int dpos, int fpos)
      Renvoit les éléments se trouvant dans la zone du texte indiquée (de dpos à fpos inclu)
      JaxeElement enfantApres​(int pos)
      Renvoit le premier élément enfant de celui-ci dont la position est pos ou après pos
      void fusionner​(JaxeElement el)
      fusionne cet élément avec celui donné, dans le DOM (aucun changement du texte)
      java.util.ArrayList<javax.swing.text.Position> getComponentPositions()
      Renvoit la liste des positions dans le texte des composants graphiques
      java.util.ArrayList<java.lang.Object> getComponents()
      Renvoit la liste des composants graphiques utilisés dans l'affichage en plus du texte
      boolean getEditionAutorisee()  
      boolean getEffacementAutorise()  
      JaxeElement getFirstChild()
      Renvoit le premier élément enfant (ou null)
      JaxeElement getNextSibling()
      Renvoit l'enfant suivant (ou null)
      JaxeElement getParent()
      Renvoit l'élément parent, en utilisant l'arbre DOM
      java.awt.Point getPointEnfant​(org.w3c.dom.Element el)
      Renvoit la position de l'élément descendant dans le JaxeTextPane.
      static org.w3c.dom.ProcessingInstruction getProcessing​(org.w3c.dom.Node n)  
      protected static java.lang.String getString​(java.lang.String key)  
      static boolean hasProcessing​(org.w3c.dom.Node n)  
      boolean hasText​(org.w3c.dom.Node n)  
      int indentations()
      Renvoit les indentations dans l'arbre XML.
      abstract void init​(javax.swing.text.Position pos, org.w3c.dom.Node noeud)
      Insère le texte de l'élément à partir de l'arbre DOM, à la position pos dans le texte
      void inserer​(javax.swing.text.Position pos, org.w3c.dom.Node newel)
      initialise et insère cet élément dans le texte et l'arbre DOM
      void insererDOM​(javax.swing.text.Position pos, org.w3c.dom.Node newel)
      insère newel dans l'arbre DOM
      static void insererDOM​(JaxeDocument doc, javax.swing.text.Position pos, org.w3c.dom.Node newel)
      insère newel dans l'arbre DOM
      javax.swing.text.Position insertComponent​(javax.swing.text.Position pos, javax.swing.JComponent comp)
      Insère le composant graphique dans le texte, en l'ajoutant dans la liste des composants et en mettant à jour debut et fin
      javax.swing.text.Position insertIcon​(javax.swing.text.Position pos, javax.swing.Icon icon)
      Insère l'icône dans le texte, en l'ajoutant dans la liste des composants et en mettant à jour debut et fin
      javax.swing.text.Position insertText​(javax.swing.text.Position pos, java.lang.String texte)
      Insère le texte dans le Textpane en mettant à jour debut et fin
      javax.swing.text.Position insertText​(javax.swing.text.Position pos, java.lang.String texte, javax.swing.text.AttributeSet attset)
      Insère le texte dans le Textpane en mettant à jour debut et fin
      javax.swing.text.Position insPosition()
      position pour setCaretPosition après création d'un nouvel élément
      void majAffichage()
      Mise à jour de l'affichage par rapport à l'arbre XML
      protected void majPosSuivant()  
      void majValidite()
      Test et mise à jour de l'affichage de la validité
      void mettreAJourDOM()
      met à jour l'arbre de JaxeElement et l'arbre DOM à partir de modifs de la zone de texte
      int nombreXPath()
      Renvoit le nombre XPath (le numéro de l'élément dans la liste des éléments avec ce nom), ou 0 si le noeud n'a pas de parent.
      abstract org.w3c.dom.Node nouvelElement​(org.w3c.dom.Element refElement)  
      static org.w3c.dom.Element nouvelElementDOM​(JaxeDocument doc, java.lang.String nomElement, org.w3c.dom.Element parent)
      nouvel élément DOM à partir Espace de noms obtenu à partir de l'élément parent
      static org.w3c.dom.Element nouvelElementDOM​(JaxeDocument doc, org.w3c.dom.Element refElement)
      nouvel élément DOM.
      static org.w3c.dom.ProcessingInstruction nouvelleInstructionDOM​(JaxeDocument doc, java.lang.String cible)  
      void regrouperTextes()
      regroupe les JETexte dans les enfants
      void remplacerEnfant​(JaxeElement je, JaxeElement newje)
      remplace l'enfant je à la fois dans le texte et dans le DOM
      void remplacerEnfantDOM​(JaxeElement je, JaxeElement newje)
      remplace l'enfant je dans le DOM
      void selection​(boolean select)
      Sélection de la zone de texte où se trouve cet élément
      void setEditionAutorisee​(boolean autorise)  
      void setEffacementAutorise​(boolean autorise)  
      void setFocus()
      Met le focus dans un composant de l'élément après sa création.
      void supprimerEnfant​(JaxeElement je)
      supprime l'enfant je à la fois dans le texte et dans le DOM
      void supprimerEnfantDOM​(JaxeElement je)
      supprime l'enfant je dans le DOM
      boolean testAffichageDialogue()
      Renvoie true s'il faut afficher le dialogue d'attributs à la création de l'élément
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • debut

        public javax.swing.text.Position debut
      • fin

        public javax.swing.text.Position fin
      • noeud

        public org.w3c.dom.Node noeud
      • refElement

        public org.w3c.dom.Element refElement
      • jcomps

        public java.util.ArrayList<java.lang.Object> jcomps
      • compos

        public java.util.ArrayList<javax.swing.text.Position> compos
    • Constructor Detail

      • JaxeElement

        public JaxeElement()
    • Method Detail

      • init

        public abstract void init​(javax.swing.text.Position pos,
                                  org.w3c.dom.Node noeud)
        Insère le texte de l'élément à partir de l'arbre DOM, à la position pos dans le texte
      • creer

        public void creer​(javax.swing.text.Position pos,
                          org.w3c.dom.Node noeud)
        Initialise le champ noeud, met à jour dom2JaxeElement, et appelle init(pos, noeud)
      • majPosSuivant

        protected void majPosSuivant()
      • nouvelElement

        public abstract org.w3c.dom.Node nouvelElement​(org.w3c.dom.Element refElement)
      • testAffichageDialogue

        public boolean testAffichageDialogue()
        Renvoie true s'il faut afficher le dialogue d'attributs à la création de l'élément
      • afficherDialogue

        public void afficherDialogue​(javax.swing.JFrame jframe)
        Affiche le dialogue correspondant à l'élément
      • majAffichage

        public void majAffichage()
        Mise à jour de l'affichage par rapport à l'arbre XML
      • majValidite

        public void majValidite()
        Test et mise à jour de l'affichage de la validité
      • getComponents

        public java.util.ArrayList<java.lang.Object> getComponents()
        Renvoit la liste des composants graphiques utilisés dans l'affichage en plus du texte
      • getComponentPositions

        public java.util.ArrayList<javax.swing.text.Position> getComponentPositions()
        Renvoit la liste des positions dans le texte des composants graphiques
      • insertText

        public javax.swing.text.Position insertText​(javax.swing.text.Position pos,
                                                    java.lang.String texte,
                                                    javax.swing.text.AttributeSet attset)
        Insère le texte dans le Textpane en mettant à jour debut et fin
      • insertText

        public javax.swing.text.Position insertText​(javax.swing.text.Position pos,
                                                    java.lang.String texte)
        Insère le texte dans le Textpane en mettant à jour debut et fin
      • insertComponent

        public javax.swing.text.Position insertComponent​(javax.swing.text.Position pos,
                                                         javax.swing.JComponent comp)
        Insère le composant graphique dans le texte, en l'ajoutant dans la liste des composants et en mettant à jour debut et fin
      • insertIcon

        public javax.swing.text.Position insertIcon​(javax.swing.text.Position pos,
                                                    javax.swing.Icon icon)
        Insère l'icône dans le texte, en l'ajoutant dans la liste des composants et en mettant à jour debut et fin
      • elementA

        public JaxeElement elementA​(int pos)
        Renvoit l'élément de plus bas niveau se trouvant à la position donnée dans le texte
      • elementsDans

        public java.util.ArrayList<JaxeElement> elementsDans​(int dpos,
                                                             int fpos)
        Renvoit les éléments se trouvant dans la zone du texte indiquée (de dpos à fpos inclu)
      • nombreXPath

        public int nombreXPath()
        Renvoit le nombre XPath (le numéro de l'élément dans la liste des éléments avec ce nom), ou 0 si le noeud n'a pas de parent.
      • cheminA

        public java.lang.String cheminA​(int pos)
        Renvoit le chemin XML pour la position pos
      • enfantApres

        public JaxeElement enfantApres​(int pos)
        Renvoit le premier élément enfant de celui-ci dont la position est pos ou après pos
      • effacer

        public void effacer()
        appelé juste avant que l'élément soit effacé
      • mettreAJourDOM

        public void mettreAJourDOM()
        met à jour l'arbre de JaxeElement et l'arbre DOM à partir de modifs de la zone de texte
      • nouvelElementDOM

        public static org.w3c.dom.Element nouvelElementDOM​(JaxeDocument doc,
                                                           org.w3c.dom.Element refElement)
        nouvel élément DOM. Espace de noms obtenu à partir de la définition de la configuration. Attention, l'élément est maintenant une référence d'élément, ce n'est plus la définition du fichier de config.
      • nouvelleInstructionDOM

        public static org.w3c.dom.ProcessingInstruction nouvelleInstructionDOM​(JaxeDocument doc,
                                                                               java.lang.String cible)
      • nouvelElementDOM

        public static org.w3c.dom.Element nouvelElementDOM​(JaxeDocument doc,
                                                           java.lang.String nomElement,
                                                           org.w3c.dom.Element parent)
        nouvel élément DOM à partir Espace de noms obtenu à partir de l'élément parent
      • inserer

        public void inserer​(javax.swing.text.Position pos,
                            org.w3c.dom.Node newel)
        initialise et insère cet élément dans le texte et l'arbre DOM
      • insererDOM

        public void insererDOM​(javax.swing.text.Position pos,
                               org.w3c.dom.Node newel)
        insère newel dans l'arbre DOM
      • insererDOM

        public static void insererDOM​(JaxeDocument doc,
                                      javax.swing.text.Position pos,
                                      org.w3c.dom.Node newel)
        insère newel dans l'arbre DOM
      • creerEnfants

        public void creerEnfants​(javax.swing.text.Position newpos)
        creer les enfants de ce noeud, en supposant que c'est un élément DOM
      • creerEnfant

        public org.w3c.dom.Node creerEnfant​(javax.swing.text.Position newpos,
                                            org.w3c.dom.Node n)
        creer l'enfant n à la position newpos (avec JaxeElement.creer)
      • setFocus

        public void setFocus()
        Met le focus dans un composant de l'élément après sa création. Par défaut demande le focus pour la zone de texte globale de Jaxe.
      • insPosition

        public javax.swing.text.Position insPosition()
        position pour setCaretPosition après création d'un nouvel élément
      • hasText

        public boolean hasText​(org.w3c.dom.Node n)
      • hasProcessing

        public static boolean hasProcessing​(org.w3c.dom.Node n)
      • getProcessing

        public static org.w3c.dom.ProcessingInstruction getProcessing​(org.w3c.dom.Node n)
      • getParent

        public JaxeElement getParent()
        Renvoit l'élément parent, en utilisant l'arbre DOM
      • getFirstChild

        public JaxeElement getFirstChild()
        Renvoit le premier élément enfant (ou null)
      • getNextSibling

        public JaxeElement getNextSibling()
        Renvoit l'enfant suivant (ou null)
      • supprimerEnfant

        public void supprimerEnfant​(JaxeElement je)
        supprime l'enfant je à la fois dans le texte et dans le DOM
      • supprimerEnfantDOM

        public void supprimerEnfantDOM​(JaxeElement je)
        supprime l'enfant je dans le DOM
      • remplacerEnfant

        public void remplacerEnfant​(JaxeElement je,
                                    JaxeElement newje)
        remplace l'enfant je à la fois dans le texte et dans le DOM
      • remplacerEnfantDOM

        public void remplacerEnfantDOM​(JaxeElement je,
                                       JaxeElement newje)
        remplace l'enfant je dans le DOM
      • avecIndentation

        public boolean avecIndentation()
        Indique si les descendants de l'élément doivent être indentés
      • avecSautsDeLigne

        public boolean avecSautsDeLigne()
        Indique si des sauts de ligne doivent être ajoutés avant et après s'il n'y en a pas déjà
      • indentations

        public int indentations()
        Renvoit les indentations dans l'arbre XML. 0 pour la racine de l'arbre et JETableTexte.
      • couper

        public JaxeElement couper​(javax.swing.text.Position pos)
        Coupe un élément en 2, retourne le nouvel élément créé après celui-ci. Par défaut, ne fait rien et renvoie null. Remplacé dans JETexte et JEStyle.
      • fusionner

        public void fusionner​(JaxeElement el)
        fusionne cet élément avec celui donné, dans le DOM (aucun changement du texte)
      • regrouperTextes

        public void regrouperTextes()
        regroupe les JETexte dans les enfants
      • setEffacementAutorise

        public void setEffacementAutorise​(boolean autorise)
      • getEffacementAutorise

        public boolean getEffacementAutorise()
      • setEditionAutorisee

        public void setEditionAutorisee​(boolean autorise)
      • getEditionAutorisee

        public boolean getEditionAutorisee()
      • selection

        public void selection​(boolean select)
        Sélection de la zone de texte où se trouve cet élément
      • aDesAttributs

        public boolean aDesAttributs()
      • getPointEnfant

        public java.awt.Point getPointEnfant​(org.w3c.dom.Element el)
        Renvoit la position de l'élément descendant dans le JaxeTextPane. A implémenter dans les sous-classes ayant des composants Swing qui gèrent les éléments descendants, comme JEFormulaire ou JETable. Appelé par JaxeTextPane.allerElement().
      • getString

        protected static java.lang.String getString​(java.lang.String key)
      • changerStyle

        public void changerStyle​(java.lang.String style,
                                 int offset,
                                 int longueur)
      • attStyle

        public javax.swing.text.SimpleAttributeSet attStyle​(javax.swing.text.SimpleAttributeSet attorig)
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object