//GEN-BEGIN:initComponents
- private void initComponents() {
-
- panelHeader = new javax.swing.JPanel();
- labelMessage = new javax.swing.JLabel();
- labelSubMessage = new javax.swing.JLabel();
- panelSearch = new javax.swing.JPanel();
- labelSearch = new javax.swing.JLabel();
- editSearch = new javax.swing.JTextField();
- scrollList = new javax.swing.JScrollPane();
- listChoices = new javax.swing.JList();
- panelCommands = new javax.swing.JPanel();
- btOK = new javax.swing.JButton();
- btCancel = new javax.swing.JButton();
-
- labelMessage.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
- labelMessage.setText("example long message example long message example long message example long message example long message
");
-
- labelSubMessage.setFont(labelSubMessage.getFont().deriveFont((labelSubMessage.getFont().getStyle() | java.awt.Font.ITALIC) | java.awt.Font.BOLD));
- labelSubMessage.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
- labelSubMessage.setText("example long message example long
");
-
- javax.swing.GroupLayout panelHeaderLayout = new javax.swing.GroupLayout(panelHeader);
- panelHeader.setLayout(panelHeaderLayout);
- panelHeaderLayout.setHorizontalGroup(
- panelHeaderLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelHeaderLayout.createSequentialGroup()
- .addGroup(panelHeaderLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addComponent(labelMessage, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 210, Short.MAX_VALUE)
- .addComponent(labelSubMessage, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 210, Short.MAX_VALUE))
- .addGap(0, 0, 0))
- );
- panelHeaderLayout.setVerticalGroup(
- panelHeaderLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelHeaderLayout.createSequentialGroup()
- .addGap(0, 0, 0)
- .addComponent(labelMessage)
- .addGap(0, 0, 0)
- .addComponent(labelSubMessage))
- );
-
- labelSearch.setText("Search:");
-
- editSearch.setText("sample search text");
-
- javax.swing.GroupLayout panelSearchLayout = new javax.swing.GroupLayout(panelSearch);
- panelSearch.setLayout(panelSearchLayout);
- panelSearchLayout.setHorizontalGroup(
- panelSearchLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelSearchLayout.createSequentialGroup()
- .addGap(0, 0, 0)
- .addComponent(labelSearch)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(editSearch)
- .addGap(0, 0, 0))
- );
- panelSearchLayout.setVerticalGroup(
- panelSearchLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelSearchLayout.createSequentialGroup()
- .addGap(3, 3, 3)
- .addGroup(panelSearchLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(labelSearch)
- .addComponent(editSearch, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
- .addGap(3, 3, 3))
- );
-
- listChoices.setModel(new javax.swing.AbstractListModel() {
- String[] strings = { "item1", "item2", "item3" };
- public int getSize() { return strings.length; }
- public Object getElementAt(int i) { return strings[i]; }
- });
- scrollList.setViewportView(listChoices);
-
- btOK.setText("Choose");
- btOK.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- btOKActionPerformed(evt);
- }
- });
-
- btCancel.setText("Cancel");
- btCancel.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- btCancelActionPerformed(evt);
- }
- });
-
- javax.swing.GroupLayout panelCommandsLayout = new javax.swing.GroupLayout(panelCommands);
- panelCommands.setLayout(panelCommandsLayout);
- panelCommandsLayout.setHorizontalGroup(
- panelCommandsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelCommandsLayout.createSequentialGroup()
- .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(btOK)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(btCancel, javax.swing.GroupLayout.PREFERRED_SIZE, 70, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addContainerGap())
- );
-
- panelCommandsLayout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {btCancel, btOK});
-
- panelCommandsLayout.setVerticalGroup(
- panelCommandsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(panelCommandsLayout.createSequentialGroup()
- .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addGroup(panelCommandsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
- .addComponent(btCancel)
- .addComponent(btOK))
- .addContainerGap())
- );
-
- getRootPane().setDefaultButton(btOK);
-
- javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
- getContentPane().setLayout(layout);
- layout.setHorizontalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
- .addContainerGap()
- .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
- .addComponent(scrollList)
- .addComponent(panelCommands, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(panelHeader, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
- .addComponent(panelSearch, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
- .addContainerGap())
- );
- layout.setVerticalGroup(
- layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
- .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
- .addContainerGap()
- .addComponent(panelHeader, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(panelSearch, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(scrollList, javax.swing.GroupLayout.PREFERRED_SIZE, 246, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
- .addComponent(panelCommands, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
- .addContainerGap())
- );
-
- pack();
- }// //GEN-END:initComponents
-
- private void btOKActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btOKActionPerformed
- doChoose();
- }//GEN-LAST:event_btOKActionPerformed
-
- private void btCancelActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btCancelActionPerformed
- doCancel();
- }//GEN-LAST:event_btCancelActionPerformed
-
- /**
- * Closes the dialog
- */
- private void closeDialog(java.awt.event.WindowEvent evt) {//GEN-FIRST:event_closeDialog
- doCancel();
- }//GEN-LAST:event_closeDialog
-
- // Variables declaration - do not modify//GEN-BEGIN:variables
- private javax.swing.JButton btCancel;
- private javax.swing.JButton btOK;
- private javax.swing.JTextField editSearch;
- private javax.swing.JLabel labelMessage;
- private javax.swing.JLabel labelSearch;
- private javax.swing.JLabel labelSubMessage;
- private javax.swing.JList listChoices;
- private javax.swing.JPanel panelCommands;
- private javax.swing.JPanel panelHeader;
- private javax.swing.JPanel panelSearch;
- private javax.swing.JScrollPane scrollList;
- // End of variables declaration//GEN-END:variables
-}
diff --git a/Mage.Client/src/main/java/mage/client/util/gui/FastSearchUtil.java b/Mage.Client/src/main/java/mage/client/util/gui/FastSearchUtil.java
index ed54815434b..9b35be5133c 100644
--- a/Mage.Client/src/main/java/mage/client/util/gui/FastSearchUtil.java
+++ b/Mage.Client/src/main/java/mage/client/util/gui/FastSearchUtil.java
@@ -3,54 +3,60 @@ package mage.client.util.gui;
import mage.choices.ChoiceImpl;
import mage.client.dialog.PickChoiceDialog;
+//import java.util.ArrayList;
+import mage.client.dialog.CheckBoxList;
+
import javax.swing.*;
import java.util.HashMap;
import java.util.Map;
+//import javax.swing.text.Position;
+
+//import org.apache.log4j.helpers.LogLog;
/**
*
* @author JayDi85
*/
-public class FastSearchUtil {
-
- public static String DEFAULT_EXPANSION_SEARCH_MESSAGE = "Select set or expansion";
- public static String DEFAULT_EXPANSION_TOOLTIP_MESSAGE = "Fast search set or expansion";
+public class FastSearchUtil {
+ public static String DEFAULT_EXPANSION_SEARCH_MESSAGE = "Select set(s) or expansion(s)";
+ public static String DEFAULT_EXPANSION_TOOLTIP_MESSAGE = "Fast search set(s) or expansion(s)";
/**
- * Show fast choice modal dialog with incremental searching for any string combobox components
- * @param combo combobox control with default data model
+ * Show fast choice modal dialog with incremental searching for any string CheckBoxList components
+ * @param combo CheckBoxList control with default data model
* @param chooseMessage caption message for dialog
- */
- public static void showFastSearchForStringComboBox(JComboBox combo, String chooseMessage){
- // fast search/choice dialog for string combobox
-
+ */
+ public static void showFastSearchForStringComboBox(CheckBoxList combo, String chooseMessage){
+ // fast search/choice dialog for string combobox
+
mage.choices.Choice choice = new ChoiceImpl(false);
// collect data from expansion combobox (String)
- DefaultComboBoxModel comboModel = (DefaultComboBoxModel)combo.getModel();
+ DefaultListModel comboModel = (DefaultListModel)combo.getModel();
Map