forked from External/mage
add file for checkboxlist
This commit is contained in:
parent
eb0f196a7e
commit
f680f336ae
2 changed files with 745 additions and 7 deletions
|
|
@ -57,6 +57,7 @@ import static mage.client.dialog.PreferencesDialog.KEY_DECK_EDITOR_SEARCH_TYPES;
|
|||
import static mage.client.dialog.PreferencesDialog.KEY_DECK_EDITOR_SEARCH_UNIQUE;
|
||||
import mage.client.util.GUISizeHelper;
|
||||
import mage.client.util.gui.FastSearchUtil;
|
||||
import mage.client.dialog.CheckBoxList;
|
||||
import mage.client.util.sets.ConstructedFormats;
|
||||
import mage.constants.CardType;
|
||||
import mage.constants.Rarity;
|
||||
|
|
@ -84,6 +85,8 @@ public class CardSelector extends javax.swing.JPanel implements ComponentListene
|
|||
private final SortSetting sortSetting;
|
||||
private static final Map<String, Integer> pdAllowed = new HashMap<>();
|
||||
|
||||
private final String TEST_MULTI_SET="Multiple Sets selected";
|
||||
|
||||
private final ActionListener searchAction = evt -> jButtonSearchActionPerformed(evt);
|
||||
|
||||
/**
|
||||
|
|
@ -97,6 +100,23 @@ public class CardSelector extends javax.swing.JPanel implements ComponentListene
|
|||
initListViewComponents();
|
||||
setGUISize();
|
||||
currentView = mainModel; // by default we use List View
|
||||
|
||||
listCodeSelected = new CheckBoxList();
|
||||
// remove the all option
|
||||
boolean is_removeFinish=false;
|
||||
|
||||
String[] setCodes = ConstructedFormats.getTypes();
|
||||
java.util.List<String> result = new ArrayList<>();
|
||||
|
||||
for(int i=0; (i<setCodes.length)&&(!is_removeFinish);i++)
|
||||
{
|
||||
String item = setCodes[i];
|
||||
if(!item.equals(ConstructedFormats.ALL))
|
||||
{
|
||||
result.add(item);
|
||||
}
|
||||
}
|
||||
listCodeSelected.setListData(result.toArray());
|
||||
}
|
||||
|
||||
private void makeTransparent() {
|
||||
|
|
@ -356,14 +376,34 @@ public class CardSelector extends javax.swing.JPanel implements ComponentListene
|
|||
criteria.rarities(Rarity.SPECIAL);
|
||||
criteria.rarities(Rarity.BONUS);
|
||||
}
|
||||
|
||||
if (this.cbExpansionSet.isVisible()) {
|
||||
String expansionSelection = this.cbExpansionSet.getSelectedItem().toString();
|
||||
if (!expansionSelection.equals("- All Sets")) {
|
||||
java.util.List<String> setCodes = ConstructedFormats.getSetsByFormat(expansionSelection);
|
||||
criteria.setCodes(setCodes.toArray(new String[0]));
|
||||
}
|
||||
}
|
||||
if(listCodeSelected.getCheckedIndices().length <= 1)
|
||||
{
|
||||
String expansionSelection = this.cbExpansionSet.getSelectedItem().toString();
|
||||
if (!expansionSelection.equals("- All Sets")) {
|
||||
java.util.List<String> setCodes = ConstructedFormats.getSetsByFormat(expansionSelection);
|
||||
criteria.setCodes(setCodes.toArray(new String[0]));
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
java.util.List<String> setCodes = new ArrayList<>() ;
|
||||
//java.util.List<String> listReceived=new ArrayList<>() ;
|
||||
|
||||
int[] choiseValue=listCodeSelected.getCheckedIndices();
|
||||
ListModel x= listCodeSelected.getModel();
|
||||
|
||||
for(int itemIndex: choiseValue){
|
||||
|
||||
java.util.List<String> listReceived=ConstructedFormats.getSetsByFormat(x.getElementAt(itemIndex).toString());
|
||||
listReceived.stream().filter((item) -> (setCodes.contains(item)==false)).forEachOrdered((item) -> {
|
||||
setCodes.add(item);
|
||||
});
|
||||
}
|
||||
criteria.setCodes(setCodes.toArray(new String[0]));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return criteria;
|
||||
}
|
||||
|
|
@ -1194,6 +1234,22 @@ public class CardSelector extends javax.swing.JPanel implements ComponentListene
|
|||
}// </editor-fold>//GEN-END:initComponents
|
||||
|
||||
private void cbExpansionSetActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_cbExpansionSetActionPerformed
|
||||
if(!cbExpansionSet.getSelectedItem().toString().contains(TEST_MULTI_SET))
|
||||
{
|
||||
int index=cbExpansionSet.getSelectedIndex();
|
||||
if(cbExpansionSet.getItemAt(0).contains(TEST_MULTI_SET))
|
||||
{
|
||||
cbExpansionSet.removeItemAt(0);
|
||||
index--;
|
||||
}
|
||||
listCodeSelected.uncheckAll();
|
||||
if(index > 0)
|
||||
{
|
||||
//ofset because all sets is removed from the list
|
||||
listCodeSelected.setChecked(index-1, true);
|
||||
}
|
||||
}
|
||||
|
||||
filterCards();
|
||||
}//GEN-LAST:event_cbExpansionSetActionPerformed
|
||||
|
||||
|
|
@ -1481,6 +1537,8 @@ public class CardSelector extends javax.swing.JPanel implements ComponentListene
|
|||
private TableModel mainModel;
|
||||
private JTable mainTable;
|
||||
private ICardGrid currentView;
|
||||
|
||||
private CheckBoxList listCodeSelected;
|
||||
|
||||
// Variables declaration - do not modify//GEN-BEGIN:variables
|
||||
private javax.swing.ButtonGroup bgView;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue