From: <kp...@us...> - 2006-09-05 09:38:51
|
Revision: 6881 http://svn.sourceforge.net/jedit/?rev=6881&view=rev Author: kpouer Date: 2006-09-05 02:38:38 -0700 (Tue, 05 Sep 2006) Log Message: ----------- Clearing a register is now persistent (#1541821) Modified Paths: -------------- jEdit/trunk/doc/CHANGES.txt jEdit/trunk/org/gjt/sp/jedit/Registers.java Modified: jEdit/trunk/doc/CHANGES.txt =================================================================== --- jEdit/trunk/doc/CHANGES.txt 2006-09-04 11:51:27 UTC (rev 6880) +++ jEdit/trunk/doc/CHANGES.txt 2006-09-05 09:38:38 UTC (rev 6881) @@ -91,6 +91,8 @@ - Formatting an empty paragraph do not throw a StringIndexOutOfBoundsException anymore (#1548902) (Matthieu Casanova) + +- Clearing a register is now persistent (#1541821) (Matthieu Casanova) }}} {{{ Miscellaneous Modified: jEdit/trunk/org/gjt/sp/jedit/Registers.java =================================================================== --- jEdit/trunk/org/gjt/sp/jedit/Registers.java 2006-09-04 11:51:27 UTC (rev 6880) +++ jEdit/trunk/org/gjt/sp/jedit/Registers.java 2006-09-05 09:38:38 UTC (rev 6881) @@ -348,7 +348,10 @@ if(name == '$' || name == '%') register.setValue(""); else + { registers[name] = null; + modified = true; + } } //}}} //{{{ getRegisters() method @@ -386,7 +389,7 @@ if(!loaded) loadRegisters(); - StringBuffer buf = new StringBuffer(); + StringBuilder buf = new StringBuilder(registers.length << 1); for(int i = 0; i < registers.length; i++) { if(registers[i] != null) @@ -501,8 +504,14 @@ //{{{ Private members private static Register[] registers; private static long registersModTime; - private static boolean loaded, loading, modified; + private static boolean loaded, loading; + /** + * Flag that tell if a register has been modified (except for '%' and '$' registers that aren't + * saved to the xml file). + */ + private static boolean modified; + private Registers() {} static @@ -623,24 +632,24 @@ data flavor for this clipboard content (under J2RE 1.5.0_06-b05) Thus, copying from clipboard seems to be plainly impossible. */ - Log.log(Log.DEBUG,this,"clipboard.getContents(this)="+clipboard.getContents(this)+"."); + Log.log(Log.DEBUG,this,"clipboard.getContents(this)="+clipboard.getContents(this)+'.'); debugListDataFlavors(clipboard.getContents(this)); } - String selection = (String)(clipboard + String selection = (String)clipboard .getContents(this).getTransferData( - DataFlavor.stringFlavor)); + DataFlavor.stringFlavor); - boolean trailingEOL = (selection.endsWith("\n") + boolean trailingEOL = selection.endsWith("\n") || selection.endsWith(System.getProperty( - "line.separator"))); + "line.separator")); // Some Java versions return the clipboard // contents using the native line separator, // so have to convert it here BufferedReader in = new BufferedReader( new StringReader(selection)); - StringBuffer buf = new StringBuffer(); + StringBuilder buf = new StringBuilder(); String line; while((line = in.readLine()) != null) { @@ -673,7 +682,7 @@ for (int i = 0;i<dataFlavors.length;i++) { DataFlavor dataFlavor = dataFlavors[i]; - Log.log(Log.DEBUG,Registers.class,"debugListDataFlavors(): dataFlavor="+dataFlavor+"."); + Log.log(Log.DEBUG,Registers.class,"debugListDataFlavors(): dataFlavor="+dataFlavor+'.'); } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |