Adds server console truncation after 1000 lines of output
	
		
			
	
		
	
	
		
	
		
			All checks were successful
		
		
	
	
		
			
				
	
				KnarCraft/Minecraft-Server-Launcher/pipeline/head This commit looks good
				
			
		
		
	
	
				
					
				
			
		
			All checks were successful
		
		
	
	KnarCraft/Minecraft-Server-Launcher/pipeline/head This commit looks good
				
			This commit is contained in:
		| @@ -26,6 +26,7 @@ public class Console extends KeyAdapter implements ActionListener, KeyListener { | ||||
|     private final JPanel panel; | ||||
|     private final ArrayList<String> commands = new ArrayList<>(); | ||||
|     private int commandIndex; | ||||
|     private final int maxConsoleLines = 1000; | ||||
|  | ||||
|     /** | ||||
|      * Instantiates a new console | ||||
| @@ -67,9 +68,32 @@ public class Console extends KeyAdapter implements ActionListener, KeyListener { | ||||
|      * @param text <p>The string to print</p> | ||||
|      */ | ||||
|     public void output(String text) { | ||||
|         int outputLines = this.textOutput.getLineCount(); | ||||
|         if (outputLines > maxConsoleLines) { | ||||
|             truncateConsole(outputLines); | ||||
|         } | ||||
|         this.textOutput.setText(this.textOutput.getText() + "\n" + text); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Truncates the first 50 lines if the console output has reached the max limit | ||||
|      * @param outputLines <p>The currently readable lines in the console output field.</p> | ||||
|      */ | ||||
|     private void truncateConsole(int outputLines) { | ||||
|         String oldText = this.textOutput.getText(); | ||||
|         String[] oldTextList = oldText.split("\n"); | ||||
|         for (int i = 0; i < outputLines - maxConsoleLines + 50; i++) { | ||||
|             oldTextList[i] = ""; | ||||
|         } | ||||
|         StringBuilder newTextBuilder = new StringBuilder(); | ||||
|         for (String line : oldTextList) { | ||||
|             if (!line.equals("")) { | ||||
|                 newTextBuilder.append(line); | ||||
|             } | ||||
|         } | ||||
|         this.textOutput.setText(newTextBuilder.toString()); | ||||
|     } | ||||
|  | ||||
|     @Override | ||||
|     public void actionPerformed(ActionEvent e) { | ||||
|         //Sends the command from the input to the server with the same name. | ||||
|   | ||||
		Reference in New Issue
	
	Block a user