public class CreateFile extends JPanel implements ActionListener
{
static CreateFile cf = new CreateFile();
public CreateFile()
{
initComponents();
}
public void initComponents()
{
/* ****************** Initialisierung ************************* */
//Panels
tabbedPane = new JTabbedPane();
editPanel = new EditPanel();
editPanel.setPreferredSize(new Dimension(1000,1000));
scrollPane=new JScrollPane(editPanel);
editPanel. setAutoscrolls(true);
scrollPane.setPreferredSize(new Dimension(600,600));
websitePanel = new JPanel();
layoutPanel = new JPanel();
fixFormsPanel = new JPanel();
individualFormsPanel = new JPanel();
//Labels
image_label = new JLabel();
website = new JLabel();
..........
//Textfelder
websiteTextField = new JTextField();
headerWidth = new JTextField();
...........
//Buttons
buttonLogoUpload = new JButton();
buttonCreateLayout = new JButton();
buttonFixForms = new JButton();
buttonIndividualForms = new JButton();
........
headerWidth = new JTextField();
headerWidth.setDocument(new IntegerField(4));
headerHeight = new JTextField();
headerHeight.setDocument(new IntegerField(4));
..............
buttonCreateLayout.setText("erstellen");
buttonCreateLayout.addActionListener(this);
buttonCreateLayout.addKeyListener(kh);
buttonFixForms.setText("erstellen");
buttonFixForms.addActionListener(this);
buttonFixForms.addKeyListener(kh2);
buttonIndividualForms.setText("erstellen");
buttonIndividualForms.addActionListener(this);
buttonIndividualForms.addKeyListener(kh3);
buttonLogoUpload.setText("laden..");
buttonLogoUpload.addActionListener(this);
buttonLogoUpload.addKeyListener(kh4);
Border titled_border = BorderFactory.createRaisedSoftBevelBorder();
/* **************************** Layouts ************************************* */
layoutPanel.setBackground(darkGrayPanel);
Border tb_layout = BorderFactory.createTitledBorder(titled_border, "Layout", TitledBorder.LEFT, TitledBorder.TOP,font_border, Color.white);
layoutPanel.setBorder(tb_layout);
GroupLayout layoutPanelLayout = new GroupLayout(layoutPanel);
layoutPanel.setLayout(layoutPanelLayout);
layoutPanelLayout.setHorizontalGroup(
layoutPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(GroupLayout.Alignment.TRAILING, layoutPanelLayout.createSequentialGroup()
.addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layoutPanelLayout.createParallelGroup(GroupLayout.Alignment.TRAILING)
.addComponent(buttonCreateLayout, 86, 86, 86)
.addGroup(layoutPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(layoutPanelLayout.createSequentialGroup()
.addComponent(header, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(headerWidth, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(headerHeight, 40, 40, 40))
.addGroup(layoutPanelLayout.createSequentialGroup()
.addComponent(content, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(contentWidth, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(contentHeight, 40, 40, 40))
.addGroup(layoutPanelLayout.createSequentialGroup()
.addComponent(footer, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(footerWidth, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(footerHeight, 40, 40, 40))))
.addGap(14, 14, 14))
);
layoutPanelLayout.setVerticalGroup(
layoutPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(layoutPanelLayout.createSequentialGroup()
.addContainerGap()
.addGroup(layoutPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(header, 25, 25, 25)
.addComponent(headerWidth, 25, 25, 25)
.addComponent(headerHeight, 25, 25, 25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layoutPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(content, 25, 25, 25)
.addComponent(contentWidth, 25, 25, 25)
.addComponent(contentHeight, 25, 25, 25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layoutPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(footer, 25, 25, 25)
.addComponent(footerWidth, 25, 25, 25)
.addComponent(footerHeight, 25, 25,25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 18, Short.MAX_VALUE)
.addComponent(buttonCreateLayout, 30, 30, 30)
.addContainerGap())
);
fixFormsPanel.setBackground(darkGrayPanel);
Border tb_fix = BorderFactory.createTitledBorder(titled_border, "Feste Plätze", TitledBorder.LEFT, TitledBorder.TOP,font_border, Color.white);
fixFormsPanel.setBorder(tb_fix);
GroupLayout fixFormsPanelLayout = new GroupLayout(fixFormsPanel);
fixFormsPanel.setLayout(fixFormsPanelLayout);
fixFormsPanelLayout.setHorizontalGroup(
fixFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(GroupLayout.Alignment.TRAILING, fixFormsPanelLayout.createSequentialGroup()
.addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(fixFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.TRAILING)
.addComponent(buttonFixForms, 86, 86, 86)
.addGroup(fixFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(fixFormsPanelLayout.createSequentialGroup()
.addComponent(tile1, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tile1Width, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tile1Height, 40, 40, 40))
.addGroup(fixFormsPanelLayout.createSequentialGroup()
.addComponent(tile2, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tile2Width, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tile2Height, 40, 40, 40))
.addGroup(fixFormsPanelLayout.createSequentialGroup()
.addComponent(tile3, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tile3Width, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(tile3Height, 40, 40, 40))))
.addGap(14, 14, 14))
);
fixFormsPanelLayout.setVerticalGroup(
fixFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(fixFormsPanelLayout.createSequentialGroup()
.addContainerGap()
.addGroup(fixFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(tile1, 25, 25, 25)
.addComponent(tile1Width, 25, 25, 25)
.addComponent(tile1Height, 25, 25, 25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addGroup(fixFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(tile2, 25, 25, 25)
.addComponent(tile2Width, 25, 25, 25)
.addComponent(tile2Height, 25, 25, 25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addGroup(fixFormsPanelLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(tile3, 25, 25, 25)
.addComponent(tile3Width, 25, 25, 25)
.addComponent(tile3Height, 25, 25,25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 18, Short.MAX_VALUE)
.addComponent(buttonFixForms, 30, 30, 30)
.addContainerGap())
);
individualFormsPanel.setBackground(darkGrayPanel);
Border tb_individual = BorderFactory.createTitledBorder(titled_border, "Individuelle Plätze", TitledBorder.LEFT, TitledBorder.TOP,font_border, Color.white);
individualFormsPanel.setBorder(tb_individual);
GroupLayout individualFormsPanelLayout = new GroupLayout(individualFormsPanel);
individualFormsPanel.setLayout(individualFormsPanelLayout);
individualFormsPanelLayout.setHorizontalGroup(
individualFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(GroupLayout.Alignment.TRAILING, individualFormsPanelLayout.createSequentialGroup()
.addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(individualFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.TRAILING)
.addComponent(buttonIndividualForms, 86, 86, 86)
.addGroup(individualFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(individualFormsPanelLayout.createSequentialGroup()
.addComponent(baustein, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(bausteinWidth, 40, 40, 40)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(bausteinHeight, 40, 40, 40))
))
.addGap(14, 14, 14))
);
individualFormsPanelLayout.setVerticalGroup(
individualFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(individualFormsPanelLayout.createSequentialGroup()
.addContainerGap()
.addGroup(individualFormsPanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(baustein, 25, 25, 25)
.addComponent(bausteinWidth, 25, 25, 25)
.addComponent(bausteinHeight, 25, 25, 25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED, 18, Short.MAX_VALUE)
.addComponent(buttonIndividualForms, 30, 30, 30)
.addContainerGap())
);
editPanel.setBackground(lightGrayPanel);
// Border tb_edit = BorderFactory.createEtchedBorder(1, lightGrayPanel,darkGrayPanel);
// editPanel.setBorder(tb_edit);
GroupLayout editPanelLayout = new GroupLayout(editPanel);
editPanel.setLayout(editPanelLayout);
editPanelLayout.setHorizontalGroup(
editPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGap(2,2,2)
);
editPanelLayout.setVerticalGroup(
editPanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGap(2,2,2)
);
websitePanel.setBackground(darkGrayPanel);
Border tb_wesite = BorderFactory.createTitledBorder(titled_border, "Webseite", TitledBorder.LEFT, TitledBorder.TOP,font_border, Color.white);
websitePanel.setBorder(tb_wesite);
GroupLayout websitePanelLayout = new GroupLayout(websitePanel);
websitePanel.setLayout(websitePanelLayout);
websitePanelLayout.setHorizontalGroup(
websitePanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(GroupLayout.Alignment.TRAILING, websitePanelLayout.createSequentialGroup()
.addContainerGap(GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(websitePanelLayout.createParallelGroup(GroupLayout.Alignment.TRAILING)
.addGroup(websitePanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(websitePanelLayout.createSequentialGroup()
.addComponent(logo, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(buttonLogoUpload, 86, 86, 86))
.addGroup(websitePanelLayout.createSequentialGroup()
.addComponent(website, 60, 60, 60)
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addComponent(websiteTextField, 85, 85, 85))))
.addGap(2, 2, 2))
);
websitePanelLayout.setVerticalGroup(
websitePanelLayout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(websitePanelLayout.createSequentialGroup()
.addContainerGap()
.addGroup(websitePanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(website, 25, 25, 25)
.addComponent(websiteTextField, 25, 25, 25))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addGroup(websitePanelLayout.createParallelGroup(GroupLayout.Alignment.BASELINE)
.addComponent(logo, 25, 25, 25)
.addComponent(buttonLogoUpload, 30, 30,30))
.addPreferredGap(LayoutStyle.ComponentPlacement.RELATED)
.addGap(2, 2, 2))
);
scrollPane.setViewportView(editPanel);
tabbedPane.addTab("neu", scrollPane);
GroupLayout layout = new GroupLayout(this);
this.setLayout(layout);
this.setBackground(darkGrayPanel);
layout.setHorizontalGroup(
layout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(tabbedPane, GroupLayout.DEFAULT_SIZE,0, Short.MAX_VALUE)
.addPreferredGap(LayoutStyle.ComponentPlacement.UNRELATED)
.addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING, false)
.addComponent(websitePanel, GroupLayout.DEFAULT_SIZE, 0, Short.MAX_VALUE)
.addComponent(layoutPanel, GroupLayout.DEFAULT_SIZE, 0, Short.MAX_VALUE)
.addComponent(fixFormsPanel, GroupLayout.DEFAULT_SIZE, 0, Short.MAX_VALUE)
.addComponent(individualFormsPanel, GroupLayout.DEFAULT_SIZE,0, Short.MAX_VALUE))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(20 , 20, 20)
.addComponent(websitePanel, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(layoutPanel, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(fixFormsPanel, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addGap(18, 18, 18)
.addComponent(individualFormsPanel, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
.addContainerGap())
.addComponent(tabbedPane,GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
}
@Override
public void actionPerformed(ActionEvent object)
{
if (object.getSource() == buttonLogoUpload)
{
JFileChooser fc = new JFileChooser();
fc.setFileFilter(new FileNameExtensionFilter("*.jpg;*.gif","jpg", "gif"));
int state = fc.showOpenDialog(null);
if ( state == JFileChooser.APPROVE_OPTION ){
File file = fc.getSelectedFile();
// BufferedImage bi;
try {
image = ImageIO.read(file);
// image_label.setIcon(new ImageIcon(bi));
} catch (IOException e1) {
e1.printStackTrace();
}
mt = new MediaTracker(this);
mt.addImage(image,0);
}
}
if (object.getSource() == buttonCreateLayout)
{
cf.headerW = Integer.parseInt(headerWidth.getText());
cf.headerH = Integer.parseInt(headerHeight.getText());
cf.contentW = Integer.parseInt(contentWidth.getText());
cf.contentH = Integer.parseInt(contentHeight.getText());
cf.footerW = Integer.parseInt(footerWidth.getText());
cf.footerH = Integer.parseInt(footerHeight.getText());
repaint();
}
if (object.getSource() == buttonFixForms)
{
cf.tile1W = Integer.parseInt(tile1Width.getText());
cf.tile1H = Integer.parseInt(tile1Height.getText());
cf.tile2W = Integer.parseInt(tile2Width.getText());
cf.tile2H = Integer.parseInt(tile2Height.getText());
cf.tile3W = Integer.parseInt(tile3Width.getText());
cf.tile3H = Integer.parseInt(tile3Height.getText());
repaint();
}
if (object.getSource() == buttonIndividualForms)
{
cf.bausteinW = Integer.parseInt(bausteinWidth.getText());
cf.bausteinH = Integer.parseInt(bausteinHeight.getText());
repaint();
}
}
// Variablen deklarieren
Image image;
MediaTracker mt;
JTabbedPane tabbedPane;
EditPanel editPanel;
JScrollPane scrollPane;
JPanel websitePanel;
JPanel layoutPanel;
JPanel fixFormsPanel;
JPanel individualFormsPanel;
JLabel image_label;
JLabel website;
JLabel logo;
JLabel content;
JLabel header;
JLabel footer;
JLabel tile1;
JLabel tile2;
JLabel tile3;
JLabel baustein;
JLabel hinweis;
JTextField bausteinWidth;
JTextField bausteinHeight;
JTextField contentHeight;
JTextField contentWidth;
JTextField footerHeight;
JTextField footerWidth;
JTextField headerHeight;
JTextField headerWidth;
JTextField tile1Height;
JTextField tile1Width;
JTextField tile2Height;
JTextField tile2Width;
JTextField tile3Height;
JTextField tile3Width;
JTextField websiteTextField;
JButton buttonLogoUpload;
JButton buttonCreateLayout;
JButton buttonFixForms;
JButton buttonIndividualForms;
int headerW;
int headerH;
int contentW;
int contentH;
int footerW;
int footerH;
int tile1W;
int tile1H;
int tile2W;
int tile2H;
int tile3W;
int tile3H;
int bausteinW;
int bausteinH;
//Farben definieren
Color orangeText = new Color(234, 129, 68);
Color darkGrayPanel = new Color(42, 38, 36);
Color lightGrayPanel = new Color(123, 107, 99);
//Schriftart definieren
Font font_border = new Font("SansSerif", Font.PLAIN, 12);
Font font_button = new Font("SansSerif", Font.BOLD, 10);
}