summaryrefslogtreecommitdiffstats
path: root/Bachelor/ERGO/TierheimVerw/thv/TierDialog.java
diff options
context:
space:
mode:
authorSven Eisenhauer <sven@sven-eisenhauer.net>2023-11-10 15:11:48 +0100
committerSven Eisenhauer <sven@sven-eisenhauer.net>2023-11-10 15:11:48 +0100
commit33613a85afc4b1481367fbe92a17ee59c240250b (patch)
tree670b842326116b376b505ec2263878912fca97e2 /Bachelor/ERGO/TierheimVerw/thv/TierDialog.java
downloadStudium-master.tar.gz
Studium-master.tar.bz2
add new repoHEADmaster
Diffstat (limited to 'Bachelor/ERGO/TierheimVerw/thv/TierDialog.java')
-rw-r--r--Bachelor/ERGO/TierheimVerw/thv/TierDialog.java1
1 files changed, 1 insertions, 0 deletions
diff --git a/Bachelor/ERGO/TierheimVerw/thv/TierDialog.java b/Bachelor/ERGO/TierheimVerw/thv/TierDialog.java
new file mode 100644
index 0000000..60f3ca3
--- /dev/null
+++ b/Bachelor/ERGO/TierheimVerw/thv/TierDialog.java
@@ -0,0 +1 @@
+import java.io.*; import java.util.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; /** * <p>Überschrift: TierDialog</p> * * <p>Beschreibung: Anzeige Dialog für Interessenten</p> * * <p>Copyright: Copyright (c) 2005</p> * * <p>Organisation: </p> * * @author Andreas Spirka, Sven Eisenhauer * @version 1.0 */ public class TierDialog extends AbstractMyJDlg implements Observer { Container c; int pos = 0; TierCon tc; TierCon tempCon = new TierCon(); Tier actTier = new Tier(); transient ViewComponent pic = new ViewComponent(); JPanel panelEigenschaften = new JPanel(); // Pane für Eigenschaften: RegNr, Name ... JPanel panelButton = new JPanel(); // Panel für Buttons vor und zurück //GRID JPanel grid = new JPanel(); JPanel leer = new JPanel(); //***Components*** JLabel regNr = new JLabel("RegNr."); JLabel name = new JLabel("Name"); JLabel tierart = new JLabel("Tierart"); JLabel rasse = new JLabel("Rasse"); JLabel alter = new JLabel("Alter"); JLabel geschlecht = new JLabel("Geschlecht"); JLabel farbe = new JLabel("Farbe"); JLabel sonstiges = new JLabel("Sonstiges"); Vector<JLabel> tierArtLabels = new Vector<JLabel>(); Vector<JCheckBox> tierArtCheckBoxes = new Vector<JCheckBox>(); JTextField regNrText = new JTextField(12); JTextField nameText = new JTextField(12); JTextField tierartText = new JTextField(12); JTextField tierGeschlecht = new JTextField(12); JTextField rasseText = new JTextField(12); JTextField alterText = new JTextField(12); JTextField farbeText = new JTextField(12); JTextArea sonstigesText = new JTextArea(2,15); JButton zurueck = new JButton("zurück"); JButton vor = new JButton("vor"); JButton bestand = new JButton("Tierbestand"); /** * @param cont * @param gbl * @param c * @param x * @param y * @param width * @param height * @param weightx * @param weighty */ static void addComponent( Container cont, GridBagLayout gbl, Component c, int x, int y, int width, int height, double weightx, double weighty ){ GridBagConstraints gbc = new GridBagConstraints(); gbc.fill = GridBagConstraints.BOTH; gbc.gridx = x; gbc.gridy = y; gbc.gridwidth = width; gbc.gridheight = height; gbc.weightx = weightx; gbc.weighty = weighty; gbl.setConstraints( c, gbc ); cont.add( c ); } /** * Aktualisiert den verwendeten TierContainer */ public void updateTc() { tc=thv.getTierCon(); TierCon tempCon2 = new TierCon(); if(thv.getActUser().getRole() == User.ROLE_GUEST) { for (int i=0;i<tc.size();i++) if( ( (Tier) tc.elementAt(i) ).getFreigabe() ) tempCon.addTier( (Tier) tc.elementAt(i) ); tc=tempCon; } for (int i=0;i<Tier.TIERARTEN.length;i++) { if(tierArtCheckBoxes.elementAt(i).isSelected()) { for(int n=0;n<tc.size();n++) { if( ( ((Tier)tc.elementAt(n)).getTierart() ) == i ) { tempCon2.addTier( (Tier) tc.elementAt(n) ); } } } } tc=tempCon2; if( (tc.size() > 0) && (pos < tc.size()) ) { actTier = (Tier) tc.elementAt(pos); } zeigeTier(); } /** * Konstruktor. * @param p Index */ public TierDialog(int p) { pos = p; ButtonListener2 bl = new ButtonListener2(this); setSize(450,350); vor.setActionCommand("vor"); vor.addActionListener(bl); vor.addActionListener(bl); vor.setMnemonic(KeyEvent.VK_V); zurueck.setActionCommand("zurueck"); zurueck.addActionListener(bl); zurueck.setMnemonic(KeyEvent.VK_Z); bestand.addActionListener(bl); bestand.setActionCommand("bestand"); c = getContentPane(); GridBagLayout gbl = new GridBagLayout(); c.setLayout(gbl); //GRID grid.setLayout(gbl); //***PANELS*** panelEigenschaften.setBorder(BorderFactory.createEtchedBorder()); panelEigenschaften.setLayout( new GridLayout(0, 2,1,1 ) ); panelButton.setBorder(BorderFactory.createEtchedBorder()); panelButton.setLayout( new FlowLayout()); //***GridBag***// grid.add(panelEigenschaften); // w=Spalten h=Zeilen x=POsitionSpalte y=PositionZeile // x y w h wx wy addComponent( c, gbl, panelEigenschaften , 0, 0, 1, 2, 0, 0 ); addComponent( c, gbl, pic , 1, 0, 1, 2, 1.0, 1.0 ); addComponent( c, gbl, panelButton , 1, 2, 1, 1, 0 , 0 ); addComponent( c, gbl, bestand , 0, 2, 1, 1, 0 , 0 ); //***PanelButton***// panelButton.add(zurueck); panelButton.add(vor); bestand.setAlignmentX( Component.CENTER_ALIGNMENT); //***PANEL LINKS*** panelEigenschaften.add(regNr); panelEigenschaften.add(regNrText); panelEigenschaften.add(name); panelEigenschaften.add(nameText); panelEigenschaften.add(tierart); panelEigenschaften.add(tierartText); panelEigenschaften.add(rasse); panelEigenschaften.add(rasseText); panelEigenschaften.add(alter); panelEigenschaften.add(alterText); panelEigenschaften.add(geschlecht); panelEigenschaften.add(tierGeschlecht); panelEigenschaften.add(farbe); panelEigenschaften.add(farbeText); panelEigenschaften.add(sonstiges); panelEigenschaften.add(sonstigesText); // JLabels und JCheckBoxes für Tierarten generieren for (int i=0;i<Tier.TIERARTEN.length;i++) { tierArtLabels.add(new JLabel(Tier.TIERARTEN[i])); tierArtCheckBoxes.add(new JCheckBox()); tierArtCheckBoxes.elementAt(i).addActionListener(bl); tierArtCheckBoxes.elementAt(i).setActionCommand(Tier.TIERARTEN[i]); tierArtCheckBoxes.elementAt(i).setSelected(true); panelEigenschaften.add(tierArtLabels.elementAt(i)); panelEigenschaften.add(tierArtCheckBoxes.elementAt(i)); } panelEigenschaften.setAlignmentX( Component.TOP_ALIGNMENT); // sonst Exception falls kein Bild vorhanden pic.setVisible(false); panelButton.add(zurueck); panelButton.add(vor); bestand.setAlignmentX( Component.CENTER_ALIGNMENT); //*** SET_ENABLE=FALSE*** regNrText.setEnabled(false); nameText.setEnabled(false); tierartText.setEnabled(false); rasseText.setEnabled(false); tierGeschlecht.setEnabled(false); alterText.setEnabled(false); farbeText.setEnabled(false); sonstigesText.setEnabled(false); setTitle("Tierverwaltung - Tier anzeigen"); updateTc(); setVisible(true); actTier.addObserver(this); zeigeTier(); } /** * Daten des aktuellen Tieres anzeigen */ private void zeigeTier() { if(tc.size() > 0) { vor.setEnabled(true); zurueck.setEnabled(true); } else { vor.setEnabled(false); zurueck.setEnabled(false); } regNrText.setText(Integer.toString(actTier.getTierID())); nameText.setText(actTier.getTierName()); tierartText.setText(Tier.TIERARTEN[actTier.getTierart()]); rasseText.setText(actTier.getRasse()); alterText.setText(Integer.toString(actTier.getAlter())); tierGeschlecht.setText(Tier.GESCHLECHT[actTier.getGeschlecht()]); farbeText.setText(actTier.getFarbe()); sonstigesText.setText(actTier.getSonstiges()); File file = new File(actTier.getFoto()); if(file.exists() ) { pic.setImage(file); pic.setVisible(true); } else { pic.setVisible(false); } Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = getSize(); setLocation((screenSize.width/2)-(frameSize.width/2),(screenSize.height/2)-(frameSize.height/2)); } /* (non-Javadoc) * @see AbstractMyJDlg#buttonActionPerformed(java.awt.event.ActionEvent) */ public void buttonActionPerformed( ActionEvent e ) { String c = e.getActionCommand(); if (c.equals("bestand")) { new AlleFTiereDlg(); } else if (c.equals("vor")) { if (pos < tc.size()-1) pos++; else pos = 0; actTier=(Tier) tc.elementAt(pos); zeigeTier(); } else if (c.equals("zurueck")) { if (pos > 0) pos--; else pos = tc.size()-1; actTier=(Tier) tc.elementAt(pos); zeigeTier(); } for (int i=0;i<Tier.TIERARTEN.length;i++) { if(c.equals(Tier.TIERARTEN[i])) { updateTc(); } } } /* (non-Javadoc) * @see java.util.Observer#update(java.util.Observable, java.lang.Object) */ public void update(Observable o, Object arg) { zeigeTier(); } }//end class TierDialog \ No newline at end of file