feat: Add (de)selectAll options for contextMenu

This commit is contained in:
R-YaTian 2024-05-26 21:00:12 +08:00
parent e3b0e1283b
commit aedaa22c5e
6 changed files with 39 additions and 11 deletions

View file

@ -20,9 +20,9 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@master
- name: Set up JDK 17
uses: actions/setup-java@v3
uses: actions/setup-java@master
with:
java-version: '17'
distribution: 'temurin'

3
.gitignore vendored
View file

@ -1,2 +1,3 @@
offsets.txt
environment.txt
environment.txt
/target

View file

@ -18,13 +18,16 @@
*/
package nsusbloader.Controllers;
import nsusbloader.AppPreferences;
import nsusbloader.NSLDataTypes.EFileStatus;
import java.io.File;
import java.io.FilenameFilter;
import java.util.Locale;
import java.util.ResourceBundle;
public class NSLRowModel {
private Locale userLocale = AppPreferences.getInstance().getLocale();
private ResourceBundle rb = ResourceBundle.getBundle("locale", userLocale);
private String status;
private File nspFile;
private String nspFileName;
@ -65,23 +68,23 @@ public class NSLRowModel {
markForUpload = value;
}
public File getNspFile(){ return nspFile; }
public void setStatus(EFileStatus status){ // TODO: Localization
public void setStatus(EFileStatus status){
switch (status){
case UPLOADED:
this.status = "Success";
this.status = rb.getString("tab1_table_Lbl_Success");
markForUpload = false;
break;
case FAILED:
this.status = "Failed";
this.status = rb.getString("tab1_table_Lbl_Failed");
break;
case INDETERMINATE:
this.status = "...";
break;
case UNKNOWN:
this.status = "Unknown";
this.status = rb.getString("tab1_table_Lbl_Unknown");
break;
case INCORRECT_FILE_FAILED:
this.status = "Failed: Bad file";
this.status = rb.getString("tab1_table_Lbl_BadFile");
markForUpload = false;
break;
}

View file

@ -182,7 +182,19 @@ public class NSTableViewController implements Initializable {
MediatorControl.getInstance().getGamesController().disableUploadStopBtn(true); // TODO: change to something better
table.refresh();
});
contextMenu.getItems().addAll(deleteMenuItem, deleteAllMenuItem);
MenuItem selectAllMenuItem = new MenuItem(resourceBundle.getString("tab1_table_contextMenu_Btn_SelectAll"));
selectAllMenuItem.setOnAction(actionEvent -> {
for (NSLRowModel model : rowsObsLst)
model.setMarkForUpload(true);
table.refresh();
});
MenuItem deselectAllMenuItem = new MenuItem(resourceBundle.getString("tab1_table_contextMenu_Btn_DeselectAll"));
deselectAllMenuItem.setOnAction(actionEvent -> {
for (NSLRowModel model : rowsObsLst)
model.setMarkForUpload(false);
table.refresh();
});
contextMenu.getItems().addAll(deleteMenuItem, deleteAllMenuItem, selectAllMenuItem, deselectAllMenuItem);
row.setContextMenu(contextMenu);
row.contextMenuProperty().bind(

View file

@ -19,8 +19,14 @@ tab1_table_Lbl_Status=Status
tab1_table_Lbl_FileName=File name
tab1_table_Lbl_Size=Size
tab1_table_Lbl_Upload=Upload?
tab1_table_Lbl_Success=Success
tab1_table_Lbl_Failed=Failed
tab1_table_Lbl_Unknown=Unknown
tab1_table_Lbl_BadFile=Failed: Bad file
tab1_table_contextMenu_Btn_BtnDelete=Remove
tab1_table_contextMenu_Btn_DeleteAll=Remove all
tab1_table_contextMenu_Btn_SelectAll=Select all
tab1_table_contextMenu_Btn_DeselectAll=Deselect all
tab2_Lbl_HostIP=Host IP
tab1_Lbl_NSIP=NS IP:
tab2_Cb_ValidateNSHostName=Always validate NS IP input.

View file

@ -19,8 +19,14 @@ tab1_table_Lbl_Status=\u72B6\u6001
tab1_table_Lbl_FileName=\u6587\u4EF6\u540D
tab1_table_Lbl_Size=\u5927\u5C0F
tab1_table_Lbl_Upload=\u4E0A\u4F20?
tab1_table_Lbl_Success=\u6210\u529F
tab1_table_Lbl_Failed=\u5931\u8D25
tab1_table_Lbl_Unknown=\u672A\u77E5
tab1_table_Lbl_BadFile=\u5931\u8D25: \u6587\u4EF6\u5F02\u5E38
tab1_table_contextMenu_Btn_BtnDelete=\u79FB\u9664
tab1_table_contextMenu_Btn_DeleteAll=\u79FB\u9664\u6240\u6709
tab1_table_contextMenu_Btn_SelectAll=\u9009\u62E9\u5168\u90E8
tab1_table_contextMenu_Btn_DeselectAll=\u53CD\u9009\u5168\u90E8
tab2_Lbl_HostIP=Host IP
tab1_Lbl_NSIP=NS IP:
tab2_Cb_ValidateNSHostName=\u603B\u662F\u9A8C\u8BC1 NS IP \u8F93\u5165\u3002