From 5585e1d87874caef6f272a3301207a903a44de35 Mon Sep 17 00:00:00 2001 From: Oleg Agafonov Date: Sat, 25 Jul 2020 12:12:05 +0400 Subject: [PATCH] GUI: deck editor improves: * Fixed broken DeckArea form (form/java files synced); * Improved panel sizes and scrolls fixes (small screens support, see #6881); --- .../src/main/java/mage/client/MageFrame.java | 2 +- .../java/mage/client/cards/DragCardGrid.java | 123 +++++---- .../java/mage/client/deckeditor/DeckArea.form | 36 +-- .../java/mage/client/deckeditor/DeckArea.java | 29 +-- .../client/deckeditor/DeckEditorPane.form | 5 + .../client/deckeditor/DeckEditorPane.java | 1 + .../client/deckeditor/DeckEditorPanel.form | 6 + .../client/deckeditor/DeckEditorPanel.java | 239 +++++++++--------- 8 files changed, 225 insertions(+), 216 deletions(-) diff --git a/Mage.Client/src/main/java/mage/client/MageFrame.java b/Mage.Client/src/main/java/mage/client/MageFrame.java index b65dfe74f3..a1887eb26a 100644 --- a/Mage.Client/src/main/java/mage/client/MageFrame.java +++ b/Mage.Client/src/main/java/mage/client/MageFrame.java @@ -881,7 +881,7 @@ public class MageFrame extends javax.swing.JFrame implements MageClient { popupDebug.add(menuDebugTestCardRenderModesDialog); setDefaultCloseOperation(javax.swing.WindowConstants.DO_NOTHING_ON_CLOSE); - setMinimumSize(new java.awt.Dimension(1024, 768)); + setMinimumSize(new java.awt.Dimension(1024, 500)); desktopPane.setBackground(new java.awt.Color(204, 204, 204)); diff --git a/Mage.Client/src/main/java/mage/client/cards/DragCardGrid.java b/Mage.Client/src/main/java/mage/client/cards/DragCardGrid.java index 8d231eb265..2c6ef40ba5 100644 --- a/Mage.Client/src/main/java/mage/client/cards/DragCardGrid.java +++ b/Mage.Client/src/main/java/mage/client/cards/DragCardGrid.java @@ -73,8 +73,7 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg } trimGrid(); layoutGrid(); - cardScroll.revalidate(); - cardScroll.repaint(); + repaintGrid(); } } @@ -315,8 +314,7 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg // Remove empty rows / cols / spaces in stacks trimGrid(); layoutGrid(); - cardScroll.revalidate(); - cardScroll.repaint(); + repaintGrid(); } else { // Add new cards to grid for (CardView card : cards) { @@ -325,14 +323,14 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg eventSource.fireEvent(card, ClientEventType.ADD_SPECIFIC_CARD); } layoutGrid(); - cardContent.repaint(); + repaintGrid(); } } public void changeGUISize() { layoutGrid(); cardScroll.getVerticalScrollBar().setUnitIncrement(CardRenderer.getCardTopHeight(getCardWidth())); - cardContent.repaint(); + repaintGrid(); } public void cleanUp() { @@ -386,7 +384,7 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg } trimGrid(); layoutGrid(); - cardContent.repaint(); + repaintGrid(); } public DeckCardLayout getCardLayout() { @@ -710,6 +708,47 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg // Editting mode this.mode = Constants.DeckEditorMode.LIMITED_BUILDING; + // Content + cardContent = new JLayeredPane(); + cardContent.setLayout(null); + cardContent.setOpaque(false); + cardContent.addMouseListener(new MouseAdapter() { + private boolean isDragging = false; + + @Override + public void mousePressed(MouseEvent e) { + if (SwingUtilities.isLeftMouseButton(e)) { + isDragging = true; + beginSelectionDrag(e.getX(), e.getY(), e.isShiftDown()); + updateSelectionDrag(e.getX(), e.getY()); + } + } + + @Override + public void mouseReleased(MouseEvent e) { + if (isDragging) { + isDragging = false; + updateSelectionDrag(e.getX(), e.getY()); + endSelectionDrag(e.getX(), e.getY()); + } + } + }); + cardContent.addMouseMotionListener(new MouseAdapter() { + @Override + public void mouseDragged(MouseEvent e) { + updateSelectionDrag(e.getX(), e.getY()); + } + }); + cardScroll = new JScrollPane(cardContent, + ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, + ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); + cardScroll.setOpaque(false); + cardScroll.getViewport().setOpaque(false); + cardScroll.setViewportBorder(BorderFactory.createEmptyBorder()); + cardScroll.setBorder(BorderFactory.createLineBorder(Color.gray, 1)); + cardScroll.getVerticalScrollBar().setUnitIncrement(CardRenderer.getCardTopHeight(getCardWidth())); + this.add(cardScroll, BorderLayout.CENTER); + // Toolbar sortButton = new JButton("Sort"); filterButton = new JButton("Filter"); @@ -757,56 +796,15 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg cardSizeMod = (float) Math.pow(2, sliderFrac); // Update grid layoutGrid(); - cardContent.repaint(); + repaintGrid(); } }); - cardSizeSliderLabel = new JLabel("Card Size:"); + cardSizeSliderLabel = new JLabel("Card size:"); sliderPanel.add(cardSizeSliderLabel); sliderPanel.add(cardSizeSlider); toolbar.add(sliderPanel, BorderLayout.EAST); this.add(toolbar, BorderLayout.NORTH); - // Content - cardContent = new JLayeredPane(); - cardContent.setLayout(null); - cardContent.setOpaque(false); - cardContent.addMouseListener(new MouseAdapter() { - private boolean isDragging = false; - - @Override - public void mousePressed(MouseEvent e) { - if (SwingUtilities.isLeftMouseButton(e)) { - isDragging = true; - beginSelectionDrag(e.getX(), e.getY(), e.isShiftDown()); - updateSelectionDrag(e.getX(), e.getY()); - } - } - - @Override - public void mouseReleased(MouseEvent e) { - if (isDragging) { - isDragging = false; - updateSelectionDrag(e.getX(), e.getY()); - endSelectionDrag(e.getX(), e.getY()); - } - } - }); - cardContent.addMouseMotionListener(new MouseAdapter() { - @Override - public void mouseDragged(MouseEvent e) { - updateSelectionDrag(e.getX(), e.getY()); - } - }); - cardScroll = new JScrollPane(cardContent, - ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED, - ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED); - cardScroll.setOpaque(false); - cardScroll.getViewport().setOpaque(false); - cardScroll.setViewportBorder(BorderFactory.createEmptyBorder()); - cardScroll.setBorder(BorderFactory.createLineBorder(Color.gray, 1)); - cardScroll.getVerticalScrollBar().setUnitIncrement(CardRenderer.getCardTopHeight(getCardWidth())); - this.add(cardScroll, BorderLayout.CENTER); - // Insert arrow insertArrow = new JLabel(); insertArrow.setSize(20, 20); @@ -1230,7 +1228,7 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg // And finally rerender layoutGrid(); - repaint(); + repaintGrid(); } public void reselectBy() { @@ -1340,7 +1338,7 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg // And finally rerender layoutGrid(); - repaint(); + repaintGrid(); } private static final Pattern pattern = Pattern.compile(".*Add(.*)(\\{[WUBRGXC]\\})"); @@ -1568,8 +1566,7 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg } layoutGrid(); - cardScroll.revalidate(); - repaint(); + repaintGrid(); JOptionPane.showMessageDialog(null, "Added " + pimpedCards.size() + " cards. You can select them and the originals by choosing 'Multiples'"); } } @@ -1609,8 +1606,7 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg } cardGrid = newCardGrid; layoutGrid(); - cardScroll.revalidate(); - repaint(); + repaintGrid(); } // Update the contents of the card grid @@ -1734,10 +1730,7 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg if (didModify) { // Update layout layoutGrid(); - - // Update draw - cardScroll.revalidate(); - repaint(); + repaintGrid(); } } @@ -1877,9 +1870,7 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg eventSource.fireEvent(card, ClientEventType.ADD_SPECIFIC_CARD); // Update layout layoutGrid(); - // Update draw - cardScroll.revalidate(); - repaint(); + repaintGrid(); } } @@ -2083,6 +2074,12 @@ public class DragCardGrid extends JPanel implements DragCardSource, DragCardTarg return (int) (1.4 * getCardWidth()); } + private void repaintGrid() { + cardScroll.revalidate(); + cardScroll.repaint(); + repaint(); + } + /** * Position all of the card views correctly */ diff --git a/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.form b/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.form index 8db77a1b8a..be4960f0eb 100644 --- a/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.form +++ b/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.form @@ -11,39 +11,45 @@ + - - - - - - - - - - - - + - + + + + + + + - + + + + + + - + + + + + + diff --git a/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.java b/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.java index d087803205..a87ef4fcb3 100644 --- a/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.java +++ b/Mage.Client/src/main/java/mage/client/deckeditor/DeckArea.java @@ -1,9 +1,3 @@ - - /* - * DeckArea.java - * - * Created on Feb 18, 2010, 3:10:39 PM - */ package mage.client.deckeditor; import mage.cards.Card; @@ -26,7 +20,6 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; /** - * * @author BetaSteward_at_googlemail.com */ public class DeckArea extends javax.swing.JPanel { @@ -156,7 +149,7 @@ public class DeckArea extends javax.swing.JPanel { for (CardView card : cards) { CardView newCard = new CardView(card); sideboardList.addCardView(newCard, true); - } + } } @Override @@ -298,21 +291,19 @@ public class DeckArea extends javax.swing.JPanel { deckList = new mage.client.cards.DragCardGrid(); sideboardList = new mage.client.cards.DragCardGrid(); + setLayout(new java.awt.BorderLayout()); + deckAreaSplitPane.setBorder(null); - deckAreaSplitPane.setResizeWeight(0.6); + deckAreaSplitPane.setDividerSize(10); + deckAreaSplitPane.setResizeWeight(0.5); + + deckList.setMinimumSize(new java.awt.Dimension(200, 56)); deckAreaSplitPane.setLeftComponent(deckList); + + sideboardList.setMinimumSize(new java.awt.Dimension(200, 56)); deckAreaSplitPane.setRightComponent(sideboardList); - javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); - this.setLayout(layout); - layout.setHorizontalGroup( - layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(deckAreaSplitPane, javax.swing.GroupLayout.DEFAULT_SIZE, 918, Short.MAX_VALUE) - ); - layout.setVerticalGroup( - layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(deckAreaSplitPane, javax.swing.GroupLayout.DEFAULT_SIZE, 377, Short.MAX_VALUE) - ); + add(deckAreaSplitPane, java.awt.BorderLayout.CENTER); }// //GEN-END:initComponents public DragCardGrid getDeckList() { diff --git a/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPane.form b/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPane.form index 7428599da1..a743112f19 100644 --- a/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPane.form +++ b/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPane.form @@ -20,6 +20,11 @@ + + + + + diff --git a/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPane.java b/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPane.java index f3b65eb154..48a360f973 100644 --- a/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPane.java +++ b/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPane.java @@ -74,6 +74,7 @@ public class DeckEditorPane extends MagePane { deckEditorPanel1 = new mage.client.deckeditor.DeckEditorPanel(); filler1 = new javax.swing.Box.Filler(new java.awt.Dimension(0, 0), new java.awt.Dimension(0, 10), new java.awt.Dimension(0, 32767)); + deckEditorPanel1.setMinimumSize(new java.awt.Dimension(1000, 500)); getContentPane().add(deckEditorPanel1, java.awt.BorderLayout.CENTER); getContentPane().add(filler1, java.awt.BorderLayout.NORTH); }// //GEN-END:initComponents diff --git a/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.form b/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.form index 1282c8ff13..7b7b22f0f7 100644 --- a/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.form +++ b/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.form @@ -33,6 +33,7 @@ + @@ -47,6 +48,11 @@ + + + + + diff --git a/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.java b/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.java index 3b9c00a916..584acf2cad 100644 --- a/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.java +++ b/Mage.Client/src/main/java/mage/client/deckeditor/DeckEditorPanel.java @@ -864,9 +864,12 @@ public class DeckEditorPanel extends javax.swing.JPanel { txtTimeRemaining = new javax.swing.JTextField(); deckLegalityDisplay = new mage.client.deckeditor.DeckLegalityPanel(); + panelRight.setDividerSize(10); panelRight.setOrientation(javax.swing.JSplitPane.VERTICAL_SPLIT); panelRight.setResizeWeight(0.5); panelRight.setTopComponent(cardSelector); + + deckArea.setMinimumSize(new java.awt.Dimension(200, 56)); panelRight.setBottomComponent(deckArea); panelDeck.setOpaque(false); @@ -881,21 +884,21 @@ public class DeckEditorPanel extends javax.swing.JPanel { javax.swing.GroupLayout panelDeckNameLayout = new javax.swing.GroupLayout(panelDeckName); panelDeckName.setLayout(panelDeckNameLayout); panelDeckNameLayout.setHorizontalGroup( - panelDeckNameLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelDeckNameLayout.createSequentialGroup() - .addContainerGap() - .addComponent(lblDeckName) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(txtDeckName, javax.swing.GroupLayout.DEFAULT_SIZE, 184, Short.MAX_VALUE) - .addContainerGap()) + panelDeckNameLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelDeckNameLayout.createSequentialGroup() + .addContainerGap() + .addComponent(lblDeckName) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(txtDeckName, javax.swing.GroupLayout.DEFAULT_SIZE, 184, Short.MAX_VALUE) + .addContainerGap()) ); panelDeckNameLayout.setVerticalGroup( - panelDeckNameLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelDeckNameLayout.createSequentialGroup() - .addGroup(panelDeckNameLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(txtDeckName, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(lblDeckName)) - .addGap(0, 0, 0)) + panelDeckNameLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelDeckNameLayout.createSequentialGroup() + .addGroup(panelDeckNameLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(txtDeckName, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(lblDeckName)) + .addGap(0, 0, 0)) ); panelDeck.add(panelDeckName); @@ -924,21 +927,21 @@ public class DeckEditorPanel extends javax.swing.JPanel { javax.swing.GroupLayout panelDeckCreateLayout = new javax.swing.GroupLayout(panelDeckCreate); panelDeckCreate.setLayout(panelDeckCreateLayout); panelDeckCreateLayout.setHorizontalGroup( - panelDeckCreateLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelDeckCreateLayout.createSequentialGroup() - .addContainerGap() - .addComponent(btnNew, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(btnGenDeck, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) - .addContainerGap(49, Short.MAX_VALUE)) + panelDeckCreateLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelDeckCreateLayout.createSequentialGroup() + .addContainerGap() + .addComponent(btnNew, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(btnGenDeck, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(49, Short.MAX_VALUE)) ); panelDeckCreateLayout.setVerticalGroup( - panelDeckCreateLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelDeckCreateLayout.createSequentialGroup() - .addGap(5, 5, 5) - .addGroup(panelDeckCreateLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(btnGenDeck, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE) - .addComponent(btnNew, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE))) + panelDeckCreateLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelDeckCreateLayout.createSequentialGroup() + .addGap(5, 5, 5) + .addGroup(panelDeckCreateLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(btnGenDeck, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE) + .addComponent(btnNew, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE))) ); panelDeck.add(panelDeckCreate); @@ -967,21 +970,21 @@ public class DeckEditorPanel extends javax.swing.JPanel { javax.swing.GroupLayout panelDeckLoadLayout = new javax.swing.GroupLayout(panelDeckLoad); panelDeckLoad.setLayout(panelDeckLoadLayout); panelDeckLoadLayout.setHorizontalGroup( - panelDeckLoadLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelDeckLoadLayout.createSequentialGroup() - .addContainerGap() - .addComponent(btnLoad, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(btnImport, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) - .addContainerGap(49, Short.MAX_VALUE)) + panelDeckLoadLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelDeckLoadLayout.createSequentialGroup() + .addContainerGap() + .addComponent(btnLoad, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(btnImport, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(49, Short.MAX_VALUE)) ); panelDeckLoadLayout.setVerticalGroup( - panelDeckLoadLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelDeckLoadLayout.createSequentialGroup() - .addContainerGap() - .addGroup(panelDeckLoadLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(btnLoad, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE) - .addComponent(btnImport, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE))) + panelDeckLoadLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelDeckLoadLayout.createSequentialGroup() + .addContainerGap() + .addGroup(panelDeckLoadLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(btnLoad, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE) + .addComponent(btnImport, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE))) ); panelDeck.add(panelDeckLoad); @@ -1010,21 +1013,21 @@ public class DeckEditorPanel extends javax.swing.JPanel { javax.swing.GroupLayout panelDeckSaveLayout = new javax.swing.GroupLayout(panelDeckSave); panelDeckSave.setLayout(panelDeckSaveLayout); panelDeckSaveLayout.setHorizontalGroup( - panelDeckSaveLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelDeckSaveLayout.createSequentialGroup() - .addContainerGap() - .addComponent(btnSave, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(btnExport, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) - .addContainerGap(49, Short.MAX_VALUE)) + panelDeckSaveLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelDeckSaveLayout.createSequentialGroup() + .addContainerGap() + .addComponent(btnSave, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(btnExport, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(49, Short.MAX_VALUE)) ); panelDeckSaveLayout.setVerticalGroup( - panelDeckSaveLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelDeckSaveLayout.createSequentialGroup() - .addContainerGap() - .addGroup(panelDeckSaveLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(btnSave, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE) - .addComponent(btnExport, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE))) + panelDeckSaveLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelDeckSaveLayout.createSequentialGroup() + .addContainerGap() + .addGroup(panelDeckSaveLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(btnSave, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE) + .addComponent(btnExport, javax.swing.GroupLayout.DEFAULT_SIZE, 30, Short.MAX_VALUE))) ); panelDeck.add(panelDeckSave); @@ -1055,24 +1058,24 @@ public class DeckEditorPanel extends javax.swing.JPanel { javax.swing.GroupLayout panelDeckDraftLayout = new javax.swing.GroupLayout(panelDeckDraft); panelDeckDraft.setLayout(panelDeckDraftLayout); panelDeckDraftLayout.setHorizontalGroup( - panelDeckDraftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelDeckDraftLayout.createSequentialGroup() - .addContainerGap() - .addComponent(btnSubmit, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(btnSubmitTimer, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) - .addContainerGap(49, Short.MAX_VALUE)) + panelDeckDraftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelDeckDraftLayout.createSequentialGroup() + .addContainerGap() + .addComponent(btnSubmit, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(btnSubmitTimer, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(49, Short.MAX_VALUE)) ); panelDeckDraftLayout.setVerticalGroup( - panelDeckDraftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelDeckDraftLayout.createSequentialGroup() - .addContainerGap() - .addGroup(panelDeckDraftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelDeckDraftLayout.createSequentialGroup() - .addComponent(btnSubmit, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(0, 0, Short.MAX_VALUE)) - .addComponent(btnSubmitTimer, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)) - .addGap(0, 0, 0)) + panelDeckDraftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelDeckDraftLayout.createSequentialGroup() + .addContainerGap() + .addGroup(panelDeckDraftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelDeckDraftLayout.createSequentialGroup() + .addComponent(btnSubmit, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(0, 0, Short.MAX_VALUE)) + .addComponent(btnSubmitTimer, javax.swing.GroupLayout.PREFERRED_SIZE, 0, Short.MAX_VALUE)) + .addGap(0, 0, 0)) ); panelDeck.add(panelDeckDraft); @@ -1101,22 +1104,22 @@ public class DeckEditorPanel extends javax.swing.JPanel { javax.swing.GroupLayout panelDeckLandsLayout = new javax.swing.GroupLayout(panelDeckLands); panelDeckLands.setLayout(panelDeckLandsLayout); panelDeckLandsLayout.setHorizontalGroup( - panelDeckLandsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelDeckLandsLayout.createSequentialGroup() - .addContainerGap() - .addComponent(btnAddLand, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(btnLegality, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) - .addContainerGap(49, Short.MAX_VALUE)) + panelDeckLandsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelDeckLandsLayout.createSequentialGroup() + .addContainerGap() + .addComponent(btnAddLand, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(btnLegality, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(49, Short.MAX_VALUE)) ); panelDeckLandsLayout.setVerticalGroup( - panelDeckLandsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelDeckLandsLayout.createSequentialGroup() - .addContainerGap() - .addGroup(panelDeckLandsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(btnAddLand, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(btnLegality, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) - .addGap(0, 0, 0)) + panelDeckLandsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelDeckLandsLayout.createSequentialGroup() + .addContainerGap() + .addGroup(panelDeckLandsLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(btnAddLand, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(btnLegality, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addGap(0, 0, 0)) ); panelDeck.add(panelDeckLands); @@ -1140,21 +1143,21 @@ public class DeckEditorPanel extends javax.swing.JPanel { javax.swing.GroupLayout panelDeckExitLayout = new javax.swing.GroupLayout(panelDeckExit); panelDeckExit.setLayout(panelDeckExitLayout); panelDeckExitLayout.setHorizontalGroup( - panelDeckExitLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelDeckExitLayout.createSequentialGroup() - .addContainerGap() - .addComponent(btnExit, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(txtTimeRemaining, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) - .addContainerGap(49, Short.MAX_VALUE)) + panelDeckExitLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelDeckExitLayout.createSequentialGroup() + .addContainerGap() + .addComponent(btnExit, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(txtTimeRemaining, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap(49, Short.MAX_VALUE)) ); panelDeckExitLayout.setVerticalGroup( - panelDeckExitLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelDeckExitLayout.createSequentialGroup() - .addGap(0, 11, Short.MAX_VALUE) - .addGroup(panelDeckExitLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) - .addComponent(btnExit, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(txtTimeRemaining, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE))) + panelDeckExitLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelDeckExitLayout.createSequentialGroup() + .addGap(0, 11, Short.MAX_VALUE) + .addGroup(panelDeckExitLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) + .addComponent(btnExit, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE) + .addComponent(txtTimeRemaining, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE))) ); panelDeck.add(panelDeckExit); @@ -1167,38 +1170,38 @@ public class DeckEditorPanel extends javax.swing.JPanel { javax.swing.GroupLayout panelLeftLayout = new javax.swing.GroupLayout(panelLeft); panelLeft.setLayout(panelLeftLayout); panelLeftLayout.setHorizontalGroup( - panelLeftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(panelDeck, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(bigCard, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelLeftLayout.createSequentialGroup() - .addGap(0, 0, Short.MAX_VALUE) - .addComponent(deckLegalityDisplay, javax.swing.GroupLayout.PREFERRED_SIZE, 245, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(0, 0, Short.MAX_VALUE)) + panelLeftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(panelDeck, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(bigCard, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, panelLeftLayout.createSequentialGroup() + .addGap(0, 0, Short.MAX_VALUE) + .addComponent(deckLegalityDisplay, javax.swing.GroupLayout.PREFERRED_SIZE, 245, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(0, 0, Short.MAX_VALUE)) ); panelLeftLayout.setVerticalGroup( - panelLeftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(panelLeftLayout.createSequentialGroup() - .addComponent(panelDeck, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(62, 62, 62) - .addComponent(deckLegalityDisplay, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addGap(63, 63, 63) - .addComponent(bigCard, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addContainerGap()) + panelLeftLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(panelLeftLayout.createSequentialGroup() + .addComponent(panelDeck, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addGap(62, 62, 62) + .addComponent(deckLegalityDisplay, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addGap(63, 63, 63) + .addComponent(bigCard, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addContainerGap()) ); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this); this.setLayout(layout); layout.setHorizontalGroup( - layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(layout.createSequentialGroup() - .addComponent(panelLeft, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) - .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) - .addComponent(panelRight, javax.swing.GroupLayout.PREFERRED_SIZE, 890, Short.MAX_VALUE)) + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addGroup(layout.createSequentialGroup() + .addComponent(panelLeft, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) + .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) + .addComponent(panelRight, javax.swing.GroupLayout.DEFAULT_SIZE, 890, Short.MAX_VALUE)) ); layout.setVerticalGroup( - layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(panelLeft, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) - .addComponent(panelRight, javax.swing.GroupLayout.Alignment.TRAILING) + layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) + .addComponent(panelLeft, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) + .addComponent(panelRight, javax.swing.GroupLayout.Alignment.TRAILING) ); }// //GEN-END:initComponents