package org.korsakow.ide.ui.dialogs;
import java.awt.Dimension;
import javax.swing.BorderFactory;
import javax.swing.Box;
import javax.swing.BoxLayout;
import javax.swing.JDialog;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JProgressBar;
import org.korsakow.ide.util.UIHelper;
import org.korsakow.ide.util.UIUtil;
public class ProgressDialog extends JPanel
{
public static void main(String[] args)
{
UIUtil.setUpLAF();
JDialog dialog = new JDialog();
dialog.add(new ProgressDialog());
dialog.pack();
dialog.setVisible(true);
}
private JProgressBar mainProgressBar;
private JProgressBar subProgressBar;
public ProgressDialog()
{
initUI();
}
private void initUI()
{
mainProgressBar = new JProgressBar(0, 100);
mainProgressBar.setStringPainted(true);
mainProgressBar.setValue(0);
subProgressBar = new JProgressBar(0, 100);
subProgressBar.setStringPainted(true);
subProgressBar.setValue(0);
setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
setBorder(BorderFactory.createEmptyBorder(10, 20, 20, 20));
add(UIHelper.createHorizontalMarginPanel(new JLabel("Task", JLabel.LEFT), 0, 0));
add(UIHelper.createHorizontalMarginPanel(mainProgressBar, 0, 0));
// mainProgressBar.setAlignmentX(JPanel.LEFT_ALIGNMENT);
add(Box.createVerticalStrut(5));
add(UIHelper.createHorizontalMarginPanel(new JLabel("Progress", JLabel.LEFT), 0, 0));
add(UIHelper.createHorizontalMarginPanel(subProgressBar, 0, 0));
// subProgressBar.setMaximumSize(new Dimension(Short.MAX_VALUE, 15));
// subProgressBar.setAlignmentX(JPanel.LEFT_ALIGNMENT);
setSize(640, 480);
}
public void setMainProgress(int value)
{
mainProgressBar.setValue(value);
}
public void setMainDisplayString(String string)
{
mainProgressBar.setString(string);
}
public void setSubProgress(int value)
{
subProgressBar.setValue(value);
}
public void setSubDisplayString(String string)
{
subProgressBar.setString(string);
}
public JProgressBar getMainProgressBar()
{
return mainProgressBar;
}
public JProgressBar getSubProgressBar()
{
return subProgressBar;
}
}