1 package eu
.etaxonomy
.taxeditor
;
3 import java
.util
.ArrayList
;
6 import eu
.etaxonomy
.cdm
.model
.name
.TaxonName
;
7 import eu
.etaxonomy
.cdm
.api
.service
.*;
8 import eu
.etaxonomy
.cdm
.api
.application
.CdmApplicationController
;
11 public class SimpleModel
{
12 private ArrayList modelListeners
;
13 private ArrayList objects
;
14 public SimpleModel() {
15 modelListeners
= new ArrayList();
18 public void addModelListener(IModelListener listener
) {
19 if (!modelListeners
.contains(listener
))
20 modelListeners
.add(listener
);
22 public void removeModelListener(IModelListener listener
) {
23 modelListeners
.remove(listener
);
25 public void fireModelChanged(Object
[] objects
, String type
, String property
) {
26 for (int i
= 0; i
< modelListeners
.size(); i
++) {
27 ((IModelListener
) modelListeners
.get(i
)).modelChanged(objects
,
31 public Object
[] getContents() {
32 return objects
.toArray();
34 private void initialize() {
37 List
<TaxonName
> tnList
= new ArrayList
<TaxonName
>();
38 TaxonName tn
= new TaxonName();
39 CdmApplicationController app
= new CdmApplicationController();
40 NameService ns
= app
.getNameService();
41 tnList
.add(ns
.getTaxonNameById(1));
42 tnList
.add(ns
.getTaxonNameById(4));
43 tnList
.add(ns
.getTaxonNameById(28));
45 objects
= new ArrayList();
46 NamedObject
[] objects
= {
47 new Name(tnList
.get(0).getName(), tnList
.get(0).getGenus(),tnList
.get(0).getInfraSpecificEpithet()),
48 new Name(tnList
.get(1).getName(), tnList
.get(1).getGenus(),tnList
.get(1).getInfraSpecificEpithet()),
49 new Name(tnList
.get(2).getName(), tnList
.get(2).getGenus(),tnList
.get(2).getInfraSpecificEpithet()),
51 new Name("Pilosella piloselloides (Vill.) Soják", "Pilosella", "piloselloides"),
52 new Name("Pilosella pavichii (Heuff.) Arv.-Touv.", "Pilosella", "pavichii"),
53 new Name("Pilosella vahlii (Froel.) F. W. Schultz & Sch. Bip.", "Pilosella", "vahlii")
54 /*new TypeOne(Messages.getString("SimpleModel.t1_i1"), 2, true, Messages.getString("SimpleModel.text1")), //$NON-NLS-1$ //$NON-NLS-2$
55 new TypeOne(Messages.getString("SimpleModel.t1_i2"), 1, false, Messages.getString("SimpleModel.text2")), //$NON-NLS-1$ //$NON-NLS-2$
56 new TypeOne(Messages.getString("SimpleModel.t1_i3"), 3, true, Messages.getString("SimpleModel.text3")), //$NON-NLS-1$ //$NON-NLS-2$
57 new TypeOne(Messages.getString("SimpleModel.t1_i4"), 0, false, Messages.getString("SimpleModel.text4")), //$NON-NLS-1$ //$NON-NLS-2$
58 new TypeOne(Messages.getString("SimpleModel.t1_i5"), 1, true, Messages.getString("SimpleModel.text5")), //$NON-NLS-1$ //$NON-NLS-2$
59 new TypeTwo(Messages.getString("SimpleModel.t2_i1"), false, true), //$NON-NLS-1$
60 new TypeTwo(Messages.getString("SimpleModel.t2_i2"), true, false)*/
63 } catch (RuntimeException e
) {
64 //logger.error("Error when initializing SimpleModel");
65 // TODO Auto-generated catch block
66 System
.out
.println(e
.getMessage());
70 public void add(NamedObject
[] objs
, boolean notify
) {
71 for (int i
= 0; i
< objs
.length
; i
++) {
73 objs
[i
].setModel(this);
76 fireModelChanged(objs
, IModelListener
.ADDED
, ""); //$NON-NLS-1$
79 // public void add(ArrayList<TaxonName> tns, boolean notify) {
80 // for (int i = 0; i < tns.size(); i++) {
81 // objects.add(tns.get(i));
82 // //tns[i].setModel(this);
85 // //fireModelChanged(tns, IModelListener.ADDED, ""); //$NON-NLS-1$
88 public void remove(NamedObject
[] objs
, boolean notify
) {
89 for (int i
= 0; i
< objs
.length
; i
++) {
90 objects
.remove(objs
[i
]);
91 objs
[i
].setModel(null);
94 fireModelChanged(objs
, IModelListener
.REMOVED
, ""); //$NON-NLS-1$