Class Registers


  • public class Registers
    extends java.lang.Object
    jEdit's registers are an extension of the clipboard metaphor.

    A Registers.Register is string of text indexed by a single character. Typically the text is taken from selected buffer text and the index character is a keyboard character selected by the user.

    This class defines a number of static methods that give each register the properties of a virtual clipboard.

    Two classes implement the Registers.Register interface. A Registers.ClipboardRegister is tied to the contents of the system clipboard. jEdit assigns a Registers.ClipboardRegister to the register indexed under the character $. A Registers.DefaultRegister is created for registers assigned by the user. In addition, jEdit assigns % to the last text segment selected in the text area. On Windows this is a Registers.DefaultRegister, on Unix under Java 2 version 1.4, a Registers.ClipboardRegister.

    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static void append​(TextArea textArea, char register)
      Appends the text selected in the text area to the specified register, with a newline between the old and new text.
      static void append​(TextArea textArea, char register, java.lang.String separator)
      Appends the text selected in the text area to the specified register.
      static void append​(TextArea textArea, char register, java.lang.String separator, boolean cut)
      Appends the text selected in the text area to the specified register.
      static void clearRegister​(char name)
      Sets the value of the specified register to null.
      static void copy​(TextArea textArea, char register)
      Copies the text selected in the text area into the specified register.
      static void cut​(TextArea textArea, char register)
      Copies the text selected in the text area into the specified register, and then removes it from the buffer.
      protected static void debugListDataFlavors​(java.awt.datatransfer.Transferable transferable)  
      static Registers.Register getRegister​(char name)
      Returns the specified register.
      static java.lang.String getRegisterNameString()
      Returns a string of all defined registers, used by the status bar (eg, "a b $ % ^").
      static Registers.Register[] getRegisters()
      Returns an array of all available registers.
      static boolean isLoading()  
      static void paste​(TextArea textArea, char register)
      Insets the contents of the specified register into the text area.
      static void paste​(TextArea textArea, char register, boolean vertical)
      Inserts the contents of the specified register into the text area.
      static void paste​(TextArea textArea, char register, boolean vertical, java.awt.datatransfer.DataFlavor preferredDataFlavor)
      Inserts the contents of the specified register into the text area.
      static void paste​(TextArea textArea, char register, java.awt.datatransfer.DataFlavor preferredDataFlavor)
      Insets the contents of the specified register into the text area.
      static void saveRegisters()  
      static void setListener​(RegistersListener listener)  
      static void setLoading​(boolean loading)  
      static void setRegister​(char name, java.awt.datatransfer.Transferable transferable)
      Sets the specified register.
      static void setRegister​(char name, java.lang.String value)
      Sets the specified register.
      static void setRegister​(char name, Registers.Register newRegister)
      Sets the specified register.
      static void setSaver​(RegisterSaver saver)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • copy

        public static void copy​(TextArea textArea,
                                char register)
        Copies the text selected in the text area into the specified register. This will replace the existing contents of the designated register.
        Parameters:
        textArea - The text area
        register - The register
        Since:
        jEdit 2.7pre2
      • cut

        public static void cut​(TextArea textArea,
                               char register)
        Copies the text selected in the text area into the specified register, and then removes it from the buffer.
        Parameters:
        textArea - The text area
        register - The register
        Since:
        jEdit 2.7pre2
      • append

        public static void append​(TextArea textArea,
                                  char register)
        Appends the text selected in the text area to the specified register, with a newline between the old and new text.
        Parameters:
        textArea - The text area
        register - The register
      • append

        public static void append​(TextArea textArea,
                                  char register,
                                  java.lang.String separator)
        Appends the text selected in the text area to the specified register.
        Parameters:
        textArea - The text area
        register - The register
        separator - The separator to insert between the old and new text
      • append

        public static void append​(TextArea textArea,
                                  char register,
                                  java.lang.String separator,
                                  boolean cut)
        Appends the text selected in the text area to the specified register.
        Parameters:
        textArea - The text area
        register - The register
        separator - The text to insert between the old and new text
        cut - Should the current selection be removed?
        Since:
        jEdit 3.2pre1
      • paste

        public static void paste​(TextArea textArea,
                                 char register)
        Insets the contents of the specified register into the text area.
        Parameters:
        textArea - The text area
        register - The register
        Since:
        jEdit 2.7pre2
      • paste

        public static void paste​(TextArea textArea,
                                 char register,
                                 java.awt.datatransfer.DataFlavor preferredDataFlavor)
        Insets the contents of the specified register into the text area.
        Parameters:
        textArea - The text area
        register - The register
        preferredDataFlavor - the preferred dataflavor. If not available DataFlavor.stringFlavor will be used
        Since:
        jEdit 4.4pre1
      • paste

        public static void paste​(TextArea textArea,
                                 char register,
                                 boolean vertical)
        Inserts the contents of the specified register into the text area.
        Parameters:
        textArea - The text area
        register - The register
        vertical - Vertical (columnar) paste
        Since:
        jEdit 4.1pre1
      • paste

        public static void paste​(TextArea textArea,
                                 char register,
                                 boolean vertical,
                                 java.awt.datatransfer.DataFlavor preferredDataFlavor)
        Inserts the contents of the specified register into the text area.
        Parameters:
        textArea - The text area
        register - The register
        vertical - Vertical (columnar) paste
        preferredDataFlavor - the preferred dataflavor. If not available DataFlavor.stringFlavor will be used
        Since:
        jEdit 4.4pre1
      • getRegister

        public static Registers.Register getRegister​(char name)
        Returns the specified register.
        Parameters:
        name - The name
      • setRegister

        public static void setRegister​(char name,
                                       Registers.Register newRegister)
        Sets the specified register.
        Parameters:
        name - The name
        newRegister - The new value
      • setRegister

        public static void setRegister​(char name,
                                       java.lang.String value)
        Sets the specified register.
        Parameters:
        name - The name
        value - The new value
      • setRegister

        public static void setRegister​(char name,
                                       java.awt.datatransfer.Transferable transferable)
        Sets the specified register.
        Parameters:
        name - The name
        transferable - the transferable
      • clearRegister

        public static void clearRegister​(char name)
        Sets the value of the specified register to null.
        Parameters:
        name - The register name
      • getRegisters

        public static Registers.Register[] getRegisters()
        Returns an array of all available registers. Some of the elements of this array might be null.
      • getRegisterNameString

        @Nullable
        public static java.lang.String getRegisterNameString()
        Returns a string of all defined registers, used by the status bar (eg, "a b $ % ^").
        Since:
        jEdit 4.2pre2
      • saveRegisters

        public static void saveRegisters()
      • setSaver

        public static void setSaver​(RegisterSaver saver)
      • isLoading

        public static boolean isLoading()
      • setLoading

        public static void setLoading​(boolean loading)
      • debugListDataFlavors

        protected static void debugListDataFlavors​(java.awt.datatransfer.Transferable transferable)