1212import net .minecraft .client .gui .GuiButton ;
1313import net .minecraft .client .gui .GuiScreen ;
1414import net .minecraft .client .gui .GuiTextField ;
15+ import net .minecraft .client .resources .I18n ;
16+ import net .minecraft .init .Blocks ;
1517import net .minecraftforge .fml .client .config .GuiCheckBox ;
1618import org .lwjgl .input .Keyboard ;
1719import org .w3c .dom .Document ;
@@ -37,7 +39,6 @@ public class GuiDrawKML extends GuiScreen {
3739
3840 // File Name Text Box
3941 public static final int FILE_NAME_TEXT_BOX_ID = 1 ;
40- //public static final String DEFAULT_FILE_NAME_TEXT_BOX_TEXT = javax.swing.filechooser.FileSystemView.getFileSystemView().getHomeDirectory().getAbsolutePath(); // Default path is Desktop cause why not
4142 public static final int MAX_FILE_PATH_CHARACTERS = 260 ; // windows limit according to the first bing result, TODO maybe change to programmatic, but like very insignificant as you just shouldn't need this many characters bro.
4243 private static final int [] FILE_NAME_TEXT_BOX_POS = {-155 ,0 };
4344 public static final int [] FILE_NAME_TEXT_BOX_SIZE = {280 ,20 };
@@ -46,13 +47,14 @@ public class GuiDrawKML extends GuiScreen {
4647
4748 // Select File Button
4849 public static final int SELECT_FILE_BUTTON_ID = 2 ;
49- public static final String SELECT_FILE_HOVER_TEXT = "Select File" ;
50+ public static final String SELECT_FILE_HOVER_TEXT = "tooltip.select_file" ;
51+ public static final String SELECT_FILE_KMZ_KML_DESCRIPTION = "files.kml_kmz_file_description" ;
5052 private static final int [] SELECT_FILE_BUTTON_POS = {135 , 0 };
5153 private GuiButton selectFileButton ;
5254
5355 // File Error String
54- public static final String ERROR_FINDING_FILE_TEXT = "Unable to find file location. Please try again. " ;
55- public static final String ERROR_READING_FILE_TEXT = "Error reading file. Please try another. " ;
56+ public static final String ERROR_FINDING_FILE_TEXT = "gui.error_finding_file " ;
57+ public static final String ERROR_READING_FILE_TEXT = "gui.error_reading_file " ;
5658 public static final int ERROR_FILE_COLOR = 0xAA0000 ; // Same as Minecraft dark red, but TODO get dark red programmatically?
5759
5860 private static final int [] ERROR_FILE_POS = {-145 , 25 };
@@ -67,26 +69,26 @@ public class GuiDrawKML extends GuiScreen {
6769 public static final int BLOCK_NAME_TEXT_BOX_ID = 3 ;
6870 public static final int [] BLOCK_NAME_TEXT_BOX_POS = {-95 ,40 };
6971 public static final int [] BLOCK_NAME_TEXT_BOX_SIZE = {220 ,20 };
70- public final String defaultBlockName = "gold_block" ;
71- public final String nullBlockName = "air" ;
72+ public final String defaultBlockName = Blocks . GOLD_BLOCK . getRegistryName (). toString () ;
73+ public final String nullBlockName = Blocks . AIR . getRegistryName (). toString () ;
7274 public boolean getBlockNameFromInventory = true ; // When opening the GUI should it autopopulate with the held item?
7375 private GuiTextField blockNameTextBox ;
7476
7577 // Block Name Help Icon
7678 public static final int BLOCK_HELP_ID = 4 ;
77- public static final String BLOCK_HELP_HOVER_TEXT = "Block used to trace outline " ;
79+ public static final String BLOCK_HELP_HOVER_TEXT = "tooltip.block_name_help " ;
7880 private static final int [] BLOCK_HELP_POS = {135 , 40 };
7981 private GuiButton blockHelpButton ;
8082
8183 // Allow API Checkbox
8284 public static final int API_CHECK_BOX_ID = 5 ;
8385 public static final int [] API_CHECK_BOX_POS = {-95 ,65 };
84- public static final String API_CHECK_BOX_TEXT = "Get ground level from the internet " ;
86+ public static final String API_CHECK_BOX_TEXT = "gui.get_from_api_text " ;
8587 private GuiCheckBox apiCheckBox ;
8688
8789 // Build Button
8890 public static final int BUILD_BUTTON_ID = 6 ;
89- public static final String BUILD_BUTTON_TEXT = "Build " ;
91+ public static final String BUILD_BUTTON_TEXT = "gui.build " ;
9092 public static final int [] BUILD_BUTTON_POS = {-50 ,85 };
9193 public static final int [] BUILD_BUTTON_SIZE = {100 ,20 };
9294 private GuiButton buildButton ;
@@ -106,7 +108,7 @@ public void initGui() {
106108 super .initGui ();
107109
108110 // Set up the filter for the file viewer
109- FileNameExtensionFilter filter = new FileNameExtensionFilter ("kmz or kml file" ,"kmz" ,"kml" ); // Files generally supported (but not enforced)
111+ FileNameExtensionFilter filter = new FileNameExtensionFilter (I18n . format ( SELECT_FILE_KMZ_KML_DESCRIPTION ) ,"kmz" ,"kml" ); // Files generally supported (but not enforced)
110112 FILE_CHOOSER .setFileFilter (filter ); // Set filter to kmz/kml
111113 FILE_CHOOSER .setFileSelectionMode (JFileChooser .FILES_AND_DIRECTORIES ); // Allow directories
112114
@@ -154,12 +156,12 @@ public void initGui() {
154156 addButton (blockHelpButton );
155157
156158 // API Check Box
157- apiCheckBox = new GuiCheckBox (API_CHECK_BOX_ID , guiMiddleX +API_CHECK_BOX_POS [0 ], guiStartY +API_CHECK_BOX_POS [1 ], API_CHECK_BOX_TEXT , true );
159+ apiCheckBox = new GuiCheckBox (API_CHECK_BOX_ID , guiMiddleX +API_CHECK_BOX_POS [0 ], guiStartY +API_CHECK_BOX_POS [1 ], I18n . format ( API_CHECK_BOX_TEXT ) , true );
158160 GoundLevelProcessor .defaultProcessor .enabled = true ;
159161 addButton (apiCheckBox );
160162
161163 // Build Button
162- buildButton = new GuiButton (BUILD_BUTTON_ID , guiMiddleX +BUILD_BUTTON_POS [0 ],guiStartY +BUILD_BUTTON_POS [1 ], BUILD_BUTTON_SIZE [0 ], BUILD_BUTTON_SIZE [1 ], BUILD_BUTTON_TEXT );
164+ buildButton = new GuiButton (BUILD_BUTTON_ID , guiMiddleX +BUILD_BUTTON_POS [0 ],guiStartY +BUILD_BUTTON_POS [1 ], BUILD_BUTTON_SIZE [0 ], BUILD_BUTTON_SIZE [1 ], I18n . format ( BUILD_BUTTON_TEXT ) );
163165 addButton (buildButton );
164166 }
165167
@@ -188,12 +190,12 @@ public void drawScreen(int mouseX, int mouseY, float partialTicks) {
188190
189191 // Select File Tooltip
190192 if (mouseX >= guiMiddleX + SELECT_FILE_BUTTON_POS [0 ] && mouseX < guiMiddleX + SELECT_FILE_BUTTON_POS [0 ]+20 && mouseY >= guiStartY + SELECT_FILE_BUTTON_POS [1 ] && mouseY < guiStartY + SELECT_FILE_BUTTON_POS [1 ]+20 ) {
191- drawHoveringText (SELECT_FILE_HOVER_TEXT , mouseX , mouseY );
193+ drawHoveringText (I18n . format ( SELECT_FILE_HOVER_TEXT ) , mouseX , mouseY );
192194 }
193195
194196 // Block Help Tooltip
195197 if (mouseX >= guiMiddleX + BLOCK_HELP_POS [0 ] && mouseX < guiMiddleX + BLOCK_HELP_POS [0 ]+20 && mouseY >= guiStartY + BLOCK_HELP_POS [1 ] && mouseY < guiStartY + BLOCK_HELP_POS [1 ]+20 ) {
196- drawHoveringText (BLOCK_HELP_HOVER_TEXT , mouseX , mouseY );
198+ drawHoveringText (I18n . format ( BLOCK_HELP_HOVER_TEXT ) , mouseX , mouseY );
197199 }
198200 }
199201
@@ -274,19 +276,19 @@ protected void actionPerformed(GuiButton button) throws IOException {
274276 * Using the values from the text boxes, try parsing and building the file.
275277 */
276278 public void build () {
277- new Thread (() -> { // New thread as to allow for loading screen TODO Make loading screen
279+ new Thread (() -> {
278280 Document [] documents ;
279281
280282 try {
281283 documents = KMLParser .parse (new File (fileNameTextBox .getText ())); // TODO Add loading/parsing text (maybe below build button) to the screen to signify it is doing stuff even if it looks frozen
282284 } catch (IOException e ) {
283- errorFileText = ERROR_FINDING_FILE_TEXT ;
285+ errorFileText = I18n . format ( ERROR_FINDING_FILE_TEXT ) ;
284286 return ;
285287 } catch (ParserConfigurationException e ) {
286- errorFileText = ERROR_READING_FILE_TEXT ;
288+ errorFileText = I18n . format ( ERROR_READING_FILE_TEXT ) ;
287289 return ;
288290 } catch (SAXException e ) {
289- errorFileText = ERROR_READING_FILE_TEXT ;
291+ errorFileText = I18n . format ( ERROR_READING_FILE_TEXT ) ;
290292 return ;
291293 }
292294
0 commit comments