From 1e8d3787cfbd88270b3325b4f7ce11cd33676302 Mon Sep 17 00:00:00 2001 From: nobody Date: Wed, 17 Apr 2019 10:58:38 +0200 Subject: [PATCH] Erstellung des Repositories --- src/autogui/Start.java | 52 ++++ src/controller/CommandController.java | 64 ++++ src/controller/CommandInterface.java | 16 + src/controller/CommandInvoker.java | 49 +++ .../commands/CommandLoescheDaten.java | 38 +++ src/controller/commands/CommandNeueDaten.java | 38 +++ src/controller/commands/CommandOpen.java | 38 +++ src/controller/commands/CommandSave.java | 38 +++ src/model/AdressverwaltungModel.java | 120 ++++++++ src/view/Adressverwaltung.form | 203 +++++++++++++ src/view/Adressverwaltung.java | 281 ++++++++++++++++++ src/view/Icons/Delete24.gif | Bin 0 -> 249 bytes src/view/Icons/Find24.gif | Bin 0 -> 1250 bytes src/view/Icons/New24.gif | Bin 0 -> 778 bytes src/view/Icons/Open24.gif | Bin 0 -> 462 bytes src/view/Icons/Save24.gif | Bin 0 -> 266 bytes src/view/Icons/Search24.gif | Bin 0 -> 820 bytes 17 files changed, 937 insertions(+) create mode 100644 src/autogui/Start.java create mode 100644 src/controller/CommandController.java create mode 100644 src/controller/CommandInterface.java create mode 100644 src/controller/CommandInvoker.java create mode 100644 src/controller/commands/CommandLoescheDaten.java create mode 100644 src/controller/commands/CommandNeueDaten.java create mode 100644 src/controller/commands/CommandOpen.java create mode 100644 src/controller/commands/CommandSave.java create mode 100644 src/model/AdressverwaltungModel.java create mode 100644 src/view/Adressverwaltung.form create mode 100644 src/view/Adressverwaltung.java create mode 100644 src/view/Icons/Delete24.gif create mode 100644 src/view/Icons/Find24.gif create mode 100644 src/view/Icons/New24.gif create mode 100644 src/view/Icons/Open24.gif create mode 100644 src/view/Icons/Save24.gif create mode 100644 src/view/Icons/Search24.gif diff --git a/src/autogui/Start.java b/src/autogui/Start.java new file mode 100644 index 0000000..545149d --- /dev/null +++ b/src/autogui/Start.java @@ -0,0 +1,52 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ + +package autogui; + +import controller.CommandController; +import javax.swing.JOptionPane; +import javax.swing.UIManager; +import model.AdressverwaltungModel; +import view.Adressverwaltung; + +/** + * Builder Class + * @author nobody + */ +public class Start +{ + public Start() + { + Adressverwaltung view = new Adressverwaltung(); + AdressverwaltungModel model = new AdressverwaltungModel(); + CommandController controller = new CommandController(view, model); + controller.registerEvents(); + controller.registerCommands(); + view.setVisible(true); + } + + /** + * @param args the command line arguments + */ + public static void main(String[] args) + { + try + { + for (UIManager.LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) { + if ("Nimbus".equals(info.getName())) { + UIManager.setLookAndFeel(info.getClassName()); + } + } + } + catch(Exception ex) + { + JOptionPane.showMessageDialog(null, "SAU PREUSSE!!!"); + } + + new Start(); + + } +} diff --git a/src/controller/CommandController.java b/src/controller/CommandController.java new file mode 100644 index 0000000..09fc00a --- /dev/null +++ b/src/controller/CommandController.java @@ -0,0 +1,64 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ + +package controller; + +import controller.commands.CommandLoescheDaten; +import controller.commands.CommandNeueDaten; +import controller.commands.CommandOpen; +import controller.commands.CommandSave; +import java.awt.event.ActionEvent; +import java.awt.event.ActionListener; +import model.AdressverwaltungModel; +import view.Adressverwaltung; + +/** + * + * @author nobody + */ +public class CommandController implements ActionListener +{ + + private Adressverwaltung view; + private AdressverwaltungModel model; + private CommandInvoker invoker; + + public CommandController(Adressverwaltung view,AdressverwaltungModel model) + { + this.view = view; + this.model = model; + invoker = new CommandInvoker(); + } + + public void registerEvents() + { + view.getMnuioeffnen().addActionListener(this); + view.getMnuispeichern().addActionListener(this); + view.getMnuineueadresse().addActionListener(this); + view.getMnuiloescheadresse().addActionListener(this); + view.getBtnoeffnen().addActionListener(this); + view.getBtnspeichern().addActionListener(this); + view.getBtnneueadresse().addActionListener(this); + view.getBtnloescheadresse().addActionListener(this); + } + + public void registerCommands() + { + invoker.addCommand(view.getMnuioeffnen(), new CommandOpen(view, model)); + invoker.addCommand(view.getMnuispeichern(), new CommandSave(view,model)); + invoker.addCommand(view.getMnuineueadresse(),new CommandNeueDaten(view,model)); + invoker.addCommand(view.getMnuiloescheadresse(),new CommandLoescheDaten(view,model)); + } + + @Override + public void actionPerformed(ActionEvent e) + { + Object key = e.getSource(); + invoker.executeCommand(key); + } + + +} diff --git a/src/controller/CommandInterface.java b/src/controller/CommandInterface.java new file mode 100644 index 0000000..0af5bab --- /dev/null +++ b/src/controller/CommandInterface.java @@ -0,0 +1,16 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package controller; + +/** + * + * @author nobody + */ +public interface CommandInterface +{ + public void execute(); + public void undo(); +} diff --git a/src/controller/CommandInvoker.java b/src/controller/CommandInvoker.java new file mode 100644 index 0000000..857eabd --- /dev/null +++ b/src/controller/CommandInvoker.java @@ -0,0 +1,49 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ + +package controller; + +import java.util.HashMap; +import java.util.Stack; + +/** + * + * @author nobody + */ +public class CommandInvoker +{ + + private HashMap commands; + private Stack undoStack; + + public CommandInvoker() + { + commands = new HashMap<>(); + undoStack = new Stack<>(); + } + + public void addCommand(Object key,CommandInterface value) + { + commands.put(key,value); + } + + public void executeCommand(Object key) + { + commands.get(key).execute(); + if (false) + { + undoStack.push(commands.get(key)); + } + } + + public void undoCommand() + { + if(!undoStack.isEmpty()) + { + undoStack.pop().undo(); + } + } +} diff --git a/src/controller/commands/CommandLoescheDaten.java b/src/controller/commands/CommandLoescheDaten.java new file mode 100644 index 0000000..2fdcec7 --- /dev/null +++ b/src/controller/commands/CommandLoescheDaten.java @@ -0,0 +1,38 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ + +package controller.commands; + +import controller.CommandInterface; +import model.AdressverwaltungModel; +import view.Adressverwaltung; + +/** + * + * @author nobody + */ +public class CommandLoescheDaten implements CommandInterface +{ + private Adressverwaltung view; + private AdressverwaltungModel model; + + public CommandLoescheDaten(Adressverwaltung view, AdressverwaltungModel model) + { + this.view = view; + this.model = model; + } + + @Override + public void execute() + { + model.eintragLoeschen(0); + } + + @Override + public void undo() + { + } +} diff --git a/src/controller/commands/CommandNeueDaten.java b/src/controller/commands/CommandNeueDaten.java new file mode 100644 index 0000000..924f281 --- /dev/null +++ b/src/controller/commands/CommandNeueDaten.java @@ -0,0 +1,38 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ + +package controller.commands; + +import controller.CommandInterface; +import model.AdressverwaltungModel; +import view.Adressverwaltung; + +/** + * + * @author nobody + */ +public class CommandNeueDaten implements CommandInterface +{ + private Adressverwaltung view; + private AdressverwaltungModel model; + + public CommandNeueDaten(Adressverwaltung view, AdressverwaltungModel model) + { + this.view = view; + this.model = model; + } + + @Override + public void execute() + { + model.eintragHinzufuegen(); + } + + @Override + public void undo() + { + } +} diff --git a/src/controller/commands/CommandOpen.java b/src/controller/commands/CommandOpen.java new file mode 100644 index 0000000..4888106 --- /dev/null +++ b/src/controller/commands/CommandOpen.java @@ -0,0 +1,38 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ + +package controller.commands; + +import controller.CommandInterface; +import model.AdressverwaltungModel; +import view.Adressverwaltung; + +/** + * + * @author nobody + */ +public class CommandOpen implements CommandInterface +{ + private Adressverwaltung view; + private AdressverwaltungModel model; + + public CommandOpen(Adressverwaltung view, AdressverwaltungModel model) + { + this.view = view; + this.model = model; + } + + @Override + public void execute() + { + + } + + @Override + public void undo() + { + } +} diff --git a/src/controller/commands/CommandSave.java b/src/controller/commands/CommandSave.java new file mode 100644 index 0000000..3737630 --- /dev/null +++ b/src/controller/commands/CommandSave.java @@ -0,0 +1,38 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ + +package controller.commands; + +import controller.CommandInterface; +import model.AdressverwaltungModel; +import view.Adressverwaltung; + +/** + * + * @author nobody + */ +public class CommandSave implements CommandInterface +{ + private Adressverwaltung view; + private AdressverwaltungModel model; + + public CommandSave(Adressverwaltung view, AdressverwaltungModel model) + { + this.view = view; + this.model = model; + } + + @Override + public void execute() + { + + } + + @Override + public void undo() + { + } +} diff --git a/src/model/AdressverwaltungModel.java b/src/model/AdressverwaltungModel.java new file mode 100644 index 0000000..a098a21 --- /dev/null +++ b/src/model/AdressverwaltungModel.java @@ -0,0 +1,120 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ + +package model; + +import java.io.BufferedInputStream; +import java.io.BufferedOutputStream; +import java.io.File; +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.ObjectInputStream; +import java.io.ObjectOutputStream; +import java.util.ArrayList; +import javax.swing.table.AbstractTableModel; + +/** + * + * @author le + */ +public class AdressverwaltungModel extends AbstractTableModel +{ + private ArrayList> daten; + private ArrayList adressEintraegeDaten; + private ArrayList adressEintraegeNamen; + + public AdressverwaltungModel() + { + adressEintraegeDaten = new ArrayList<>(); + adressEintraegeNamen = new ArrayList<>(); + daten = new ArrayList<>(); + adressEintraegeNamen.add("Name"); + adressEintraegeDaten.add("Lehner"); + adressEintraegeNamen.add("Telefon"); + adressEintraegeDaten.add("122345"); + daten.add(adressEintraegeDaten); + } + + @Override + public int getRowCount() + { + return daten.size(); + } + + @Override + public int getColumnCount() + { + return adressEintraegeDaten.size(); + } + + @Override + public Object getValueAt(int row, int col) + { + return daten.get(row).get(col); + } + @Override + public void setValueAt(Object value, int row, int col) + { + daten.get(row).set(col, (String)value); + } + + @Override + public boolean isCellEditable(int row, int col) + { + return true; + } + + @Override + public String getColumnName(int col) + { + return adressEintraegeNamen.get(col); + } + + public void eintragHinzufuegen() + { + adressEintraegeDaten = new ArrayList<>(); + adressEintraegeNamen.forEach(s -> adressEintraegeDaten.add(s)); + daten.add(adressEintraegeDaten); + this.fireTableDataChanged(); + } + + public void eintragLoeschen(int row) + { + daten.remove(row); + this.fireTableDataChanged(); + } + + public void spalteHinzufuegen(String name) + { + adressEintraegeNamen.add(name); + } + + public void datenSpeichern(File datei) throws FileNotFoundException, IOException + { + FileOutputStream fos = new FileOutputStream(datei); + BufferedOutputStream bos = new BufferedOutputStream(fos); + ObjectOutputStream oos = new ObjectOutputStream(bos); + oos.writeObject(daten); + oos.writeObject(adressEintraegeNamen); + oos.flush(); + oos.close(); + } + + public void datenLesen(File datei) throws FileNotFoundException, IOException, ClassNotFoundException + { + FileInputStream fis = new FileInputStream(datei); + BufferedInputStream bis = new BufferedInputStream(fis); + ObjectInputStream ois = new ObjectInputStream(bis); + daten = (ArrayList>)ois.readObject(); + adressEintraegeNamen = (ArrayList)ois.readObject(); + adressEintraegeDaten = daten.get(daten.size()-1); + ois.close(); + this.fireTableDataChanged(); + } + +} diff --git a/src/view/Adressverwaltung.form b/src/view/Adressverwaltung.form new file mode 100644 index 0000000..20bf6f5 --- /dev/null +++ b/src/view/Adressverwaltung.form @@ -0,0 +1,203 @@ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+
+
+
+
+ diff --git a/src/view/Adressverwaltung.java b/src/view/Adressverwaltung.java new file mode 100644 index 0000000..20f17cf --- /dev/null +++ b/src/view/Adressverwaltung.java @@ -0,0 +1,281 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package view; + +/** + * + * @author nobody + */ +public class Adressverwaltung extends javax.swing.JFrame +{ + /** + * @return the btnloescheadresse + */ + public javax.swing.JButton getBtnloescheadresse() + { + return btnloescheadresse; + } + + /** + * @return the btnneueadresse + */ + public javax.swing.JButton getBtnneueadresse() + { + return btnneueadresse; + } + + /** + * @return the btnoeffnen + */ + public javax.swing.JButton getBtnoeffnen() + { + return btnoeffnen; + } + + /** + * @return the btnspeichern + */ + public javax.swing.JButton getBtnspeichern() + { + return btnspeichern; + } + + /** + * @return the mnuiloescheadresse + */ + public javax.swing.JMenuItem getMnuiloescheadresse() + { + return mnuiloescheadresse; + } + + /** + * @return the mnuineueadresse + */ + public javax.swing.JMenuItem getMnuineueadresse() + { + return mnuineueadresse; + } + + /** + * @return the mnuioeffnen + */ + public javax.swing.JMenuItem getMnuioeffnen() + { + return mnuioeffnen; + } + + /** + * @return the mnuispeichern + */ + public javax.swing.JMenuItem getMnuispeichern() + { + return mnuispeichern; + } + + /** + * Creates new form Hauptfenster + */ + public Adressverwaltung() + { + initComponents(); + } + + /** + * This method is called from within the constructor to initialize the form. + * WARNING: Do NOT modify this code. The content of this method is always + * regenerated by the Form Editor. + */ + @SuppressWarnings("unchecked") + // //GEN-BEGIN:initComponents + private void initComponents() + { + + jFileChooser1 = new javax.swing.JFileChooser(); + jToolBar1 = new javax.swing.JToolBar(); + btnoeffnen = new javax.swing.JButton(); + btnspeichern = new javax.swing.JButton(); + btnneueadresse = new javax.swing.JButton(); + btnloescheadresse = new javax.swing.JButton(); + lblsuesselupe = new javax.swing.JLabel(); + txtsuchbegriff = new javax.swing.JTextField(); + lblstatusanzeige = new javax.swing.JLabel(); + jScrollPane1 = new javax.swing.JScrollPane(); + table = new javax.swing.JTable(); + jMenuBar1 = new javax.swing.JMenuBar(); + mnuDatei = new javax.swing.JMenu(); + mnuioeffnen = new javax.swing.JMenuItem(); + mnuispeichern = new javax.swing.JMenuItem(); + mnuBearbeiten = new javax.swing.JMenu(); + mnuineueadresse = new javax.swing.JMenuItem(); + mnuiloescheadresse = new javax.swing.JMenuItem(); + + setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); + + jToolBar1.setRollover(true); + + btnoeffnen.setIcon(new javax.swing.ImageIcon(getClass().getResource("/view/Icons/Open24.gif"))); // NOI18N + btnoeffnen.setToolTipText("Öffnen"); + btnoeffnen.setFocusable(false); + btnoeffnen.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + btnoeffnen.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(btnoeffnen); + + btnspeichern.setIcon(new javax.swing.ImageIcon(getClass().getResource("/view/Icons/Save24.gif"))); // NOI18N + btnspeichern.setToolTipText("Speichern"); + btnspeichern.setFocusable(false); + btnspeichern.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + btnspeichern.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(btnspeichern); + + btnneueadresse.setIcon(new javax.swing.ImageIcon(getClass().getResource("/view/Icons/New24.gif"))); // NOI18N + btnneueadresse.setToolTipText("Neu"); + btnneueadresse.setFocusable(false); + btnneueadresse.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + btnneueadresse.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(btnneueadresse); + + btnloescheadresse.setIcon(new javax.swing.ImageIcon(getClass().getResource("/view/Icons/Delete24.gif"))); // NOI18N + btnloescheadresse.setToolTipText("Löschen"); + btnloescheadresse.setFocusable(false); + btnloescheadresse.setHorizontalTextPosition(javax.swing.SwingConstants.CENTER); + btnloescheadresse.setVerticalTextPosition(javax.swing.SwingConstants.BOTTOM); + jToolBar1.add(btnloescheadresse); + + lblsuesselupe.setIcon(new javax.swing.ImageIcon(getClass().getResource("/view/Icons/Find24.gif"))); // NOI18N + jToolBar1.add(lblsuesselupe); + + txtsuchbegriff.setText("Suchbegriff"); + jToolBar1.add(txtsuchbegriff); + + getContentPane().add(jToolBar1, java.awt.BorderLayout.PAGE_START); + + lblstatusanzeige.setText("Status:"); + getContentPane().add(lblstatusanzeige, java.awt.BorderLayout.PAGE_END); + + table.setModel(new javax.swing.table.DefaultTableModel( + new Object [][] + { + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null}, + {null, null, null, null} + }, + new String [] + { + "Title 1", "Title 2", "Title 3", "Title 4" + } + )); + jScrollPane1.setViewportView(table); + + getContentPane().add(jScrollPane1, java.awt.BorderLayout.CENTER); + + mnuDatei.setMnemonic('D'); + mnuDatei.setText("Datei"); + + mnuioeffnen.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_O, java.awt.event.InputEvent.CTRL_MASK)); + mnuioeffnen.setIcon(new javax.swing.ImageIcon(getClass().getResource("/view/Icons/Open24.gif"))); // NOI18N + mnuioeffnen.setText("Öffnen"); + mnuDatei.add(mnuioeffnen); + + mnuispeichern.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_S, java.awt.event.InputEvent.CTRL_MASK)); + mnuispeichern.setIcon(new javax.swing.ImageIcon(getClass().getResource("/view/Icons/Save24.gif"))); // NOI18N + mnuispeichern.setText("Speichern"); + mnuDatei.add(mnuispeichern); + + jMenuBar1.add(mnuDatei); + + mnuBearbeiten.setMnemonic('B'); + mnuBearbeiten.setText("Bearbeiten"); + + mnuineueadresse.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_N, java.awt.event.InputEvent.CTRL_MASK)); + mnuineueadresse.setIcon(new javax.swing.ImageIcon(getClass().getResource("/view/Icons/New24.gif"))); // NOI18N + mnuineueadresse.setText("Neue Adresse"); + mnuBearbeiten.add(mnuineueadresse); + + mnuiloescheadresse.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_DELETE, java.awt.event.InputEvent.CTRL_MASK)); + mnuiloescheadresse.setIcon(new javax.swing.ImageIcon(getClass().getResource("/view/Icons/Delete24.gif"))); // NOI18N + mnuiloescheadresse.setText("Lösche Adresse"); + mnuBearbeiten.add(mnuiloescheadresse); + + jMenuBar1.add(mnuBearbeiten); + + setJMenuBar(jMenuBar1); + + setSize(new java.awt.Dimension(897, 580)); + setLocationRelativeTo(null); + }// //GEN-END:initComponents + + /** + * @param args the command line arguments + */ + public static void main(String args[]) + { + /* Set the Nimbus look and feel */ + // + /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. + * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html + */ + try + { + for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) + { + if ("Nimbus".equals(info.getName())) + { + javax.swing.UIManager.setLookAndFeel(info.getClassName()); + break; + } + } + } + catch (ClassNotFoundException ex) + { + java.util.logging.Logger.getLogger(Adressverwaltung.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + catch (InstantiationException ex) + { + java.util.logging.Logger.getLogger(Adressverwaltung.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + catch (IllegalAccessException ex) + { + java.util.logging.Logger.getLogger(Adressverwaltung.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + catch (javax.swing.UnsupportedLookAndFeelException ex) + { + java.util.logging.Logger.getLogger(Adressverwaltung.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); + } + // + // + + /* Create and display the form */ + java.awt.EventQueue.invokeLater(new Runnable() + { + public void run() + { + new Adressverwaltung().setVisible(true); + } + }); + } + + // Variables declaration - do not modify//GEN-BEGIN:variables + private javax.swing.JButton btnloescheadresse; + private javax.swing.JButton btnneueadresse; + private javax.swing.JButton btnoeffnen; + private javax.swing.JButton btnspeichern; + private javax.swing.JFileChooser jFileChooser1; + private javax.swing.JMenuBar jMenuBar1; + private javax.swing.JScrollPane jScrollPane1; + private javax.swing.JToolBar jToolBar1; + private javax.swing.JLabel lblstatusanzeige; + private javax.swing.JLabel lblsuesselupe; + private javax.swing.JMenu mnuBearbeiten; + private javax.swing.JMenu mnuDatei; + private javax.swing.JMenuItem mnuiloescheadresse; + private javax.swing.JMenuItem mnuineueadresse; + private javax.swing.JMenuItem mnuioeffnen; + private javax.swing.JMenuItem mnuispeichern; + private javax.swing.JTable table; + private javax.swing.JTextField txtsuchbegriff; + // End of variables declaration//GEN-END:variables +} diff --git a/src/view/Icons/Delete24.gif b/src/view/Icons/Delete24.gif new file mode 100644 index 0000000000000000000000000000000000000000..96d799a0af0e2276358b794cb9921b80654bd2f6 GIT binary patch literal 249 zcmVgYnPz5YGcz*)006+izyJUMA^8LW000I6 zEC2ui02lxm000APXu90~Fv?Zxj3wxD75QK&Mg*XpfuO2G35jqBkS3b4<@^Fd8Vmt~ zfY8$IdOe_!=%OKi!C_HSdMc&OqwmTzKC0Vjm&yw-r%p50>i{RkXzlx){g&rzvh5~_ ze`6wS4giFOhJ_u8iW3O{A^uN8Z*X~XX=iA3ATls8Fd$-iAX9a2AWdmwa&L2ab97~G zb1Wc9ZeuPWL2PUwQfX&sbaNn5Wpib6c4cHP4GKz3Mj%I0AXa5^ATcg54GI7|RwZ9~ literal 0 HcmV?d00001 diff --git a/src/view/Icons/Find24.gif b/src/view/Icons/Find24.gif new file mode 100644 index 0000000000000000000000000000000000000000..c60430cbe2676eed7371d4a879bd7658a1b48729 GIT binary patch literal 1250 zcmeHG>rYyD0R2(-Kqv%Q(lHq9cU?{BB6suw(REoUtk!EZTGnEhHg+nsYhc`QDNCG0 znQLt)tq^PRx`0DL7cVS5MxZ6AnkTuWy8NYwQ>z(&{=luRG zMJRC7fnn8cZ8n3!=yb(B-n2+8h6o~8DB5f`h(O66i4>J$ z)tJF(;Bq+#0&(2b(4b|rSX>TAC=jSsD#C2WO{UY0jSX7u*49=glZnM*p-`x!qr+yi zS*=!rAaESl>2!?+O~I_y*4EZy7^YUMl}e>Tp^(evD2hs@Qi()@Ac$Bj7Kuaxfq=~} z>Kq7F7D(q9{sSpF7?5M zTe+BJ5!#jQkHCqgdT4*`{S833yIf>9p=IkdfHv1Frs*TK?vyC=ZeER|pu(K(89Q0|^6|^^_Ns?8(5)A~ zGMclWAewrZ2X}GyG_5>+5i)x0^?%2@x(*1-;Zap{kj13QF34`Al81pRuoEd6o?_5B ztu-`aJz4Y&?;g)cg@-QFOQo=eUkr=7cE8~Exj5ffIN7D4Pe@-UG9-M_{;P<|P2{uy z9E++L`{#2jsCesc&dl=2#_Pw$>c+(B&CBr2%J0j`?#jsR z)zkRX(e~Nb{Mgp}*VX#AwcNbB;<~xuxwzlN!|TGq=)Jt-#l-8tzvarw@X5&U$j9x( z!|Be=^TovJ(a`qH%kas_?8wLK)ztaY(e}{K^v%rh%E|54)%n`l{n*$0*Vg*l+5Fem z`JSH0sHoDz!}71M*|M_St*zC#xZ$_A;IgvXv9Z{%uhz7*+q1LUzP{$TxZk(8-N3-- zzrW_bzU92UwpP3`I0E~`}kcxr;0dHJBw2G8)WI#npOiCysvYm;YLuhSlP$5?*6B5mdlxJ*e zPfjcmTQ4*Vi~);vQb;CED=AtQJ_|Yt&WDsoR3s`8FlO+;z~IJ*T8BE77!dxq%L6{7ZNyVXfS{QAppVxT*yJ7M}h`81i%#FY-gcP zATr!DAfv`4oxwI0q9pOgjtW{{CN(+Hfdv~?bf%*eX=wlj1zNaxFhx+Nq?LZ!dF1FQ zOrM4nFk#Xu;M69#k_O!^sWh*lz5)UP03rTQLvL_-a%pF1bRaS?Ffbruc_34DZXiu* zV{&hEd2@7SZF4LjNp52`x}SeUO)Ky>VX$m_CL9>=h3;{56%kb3A>i`?^x8gV^Qz+ zMZMb=_H3HlwSIQzx>@aOX11-G-nwXF!-5I*^ZM%M_SVkqs!lUDW?*1AaNq!tL<5RH zSr{1@EE#k_;vhdcu+2Cyr@%u;s^4->(MlGJ`3y1(Iu-|pG5VP)WbM(}!n?LpXZF$y zCA)S_l)GB6qSDX)-n$>S1ErRQ21G|`izendTO>&v3#m6UD)SkNb+oxya7E4Jim&aQ zTDoB2qQy%VR#paw6f#6NC$Dt!*|fQKYE7q+pjw}@V8{At3`s%_GyD1UlS1cvGH7!t zHFD`C%sb<``KI@VrFT6X85IBdJLeZv7GsLGt^Qq`1yu%Y5l2Lp?L&#cEP4m(zRzdkK;)Yvok@2+DPR>w95 zM+*nG)w6202Uay?bo=*qhE15*%saI$Wi~e_gW^Ab=lp`oqRjM+5(Ogz0|SMmN`>Ik zJO$s(f^Vuhg8;?$zD)D%5lE-xQ91@|C@u+$<2 LLp=jtE(U7=S*BxA literal 0 HcmV?d00001 diff --git a/src/view/Icons/Search24.gif b/src/view/Icons/Search24.gif new file mode 100644 index 0000000000000000000000000000000000000000..24fc7c1631ade4cef6ba3b7067dd453db410d6b7 GIT binary patch literal 820 zcmZ?wbhEHblwgoxc=n$G2>$>7f8f9YJzc%{xcFH!4z6B#dB?T~`}aOMdid3n#TVwy zJ-%e|xs4lcZ`^QeH(X!4=HijVuTP))n4dqdu5Q(g8OP?%Ju!Fg@$K6mNJ&X+ zXlR<6n#IM%_fOb6XYQ$ayYBRDxZ1w_ROgD*+fLj$eD!7J{3BiKFL$rI+_&LM|HdoV z9)CD}{c*vp1LccP70)?TyZmhZigT6o4`<9eoIG)7=Cr+Ki%$jh?Fyf;J7L=X=)P?! zGY{^+aQE=#`})NT?P^xq)vO5W+_>}XZHct$$~kj1N|tJsEpu$$=-jq(|FtJ#Y18Bi z7AO=hTyk{X#!I`8JvevsBr|Fg{*hXD6qk!or;F>`$LQ?cBL@!E%7LKKvvuIyjlRuFnFL{Ujo_uRfiZHx>Lv~|?g^lk;-Y3@o5 z-tX6KYwT!lf9}H7+Y{IrrWD8CIPkEMnL{Y+3kyTW=4U;Un!YAEftMNkCMer&yC}4! z!&^$fV4lTKqlR7y2G0%&$wMv+6kKJr^q4*zBuq$x9$rDzYb~mEOWc` zAmB#;~mA*sLmH_F1FhfoqzKWtvFk