1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 package org.dishevelled.venn.swing;
25
26 import java.util.Set;
27
28 import javax.swing.JLabel;
29
30 import org.dishevelled.layout.LabelFieldPanel;
31
32 import org.dishevelled.observable.event.SetChangeEvent;
33 import org.dishevelled.observable.event.SetChangeListener;
34
35 import org.dishevelled.venn.QuaternaryVennModel;
36
37 import org.dishevelled.venn.model.QuaternaryVennModelImpl;
38
39
40
41
42
43
44
45
46 public abstract class AbstractQuaternaryVennDiagram<E>
47 extends LabelFieldPanel
48 {
49
50 private QuaternaryVennModel<E> model;
51
52
53 private String firstLabelText = DEFAULT_FIRST_LABEL_TEXT;
54
55
56 private String secondLabelText = DEFAULT_SECOND_LABEL_TEXT;
57
58
59 private String thirdLabelText = DEFAULT_THIRD_LABEL_TEXT;
60
61
62 private String fourthLabelText = DEFAULT_FOURTH_LABEL_TEXT;
63
64
65 private String firstOnlyLabelText = DEFAULT_FIRST_ONLY_LABEL_TEXT;
66
67
68 private String secondOnlyLabelText = DEFAULT_SECOND_ONLY_LABEL_TEXT;
69
70
71 private String thirdOnlyLabelText = DEFAULT_THIRD_ONLY_LABEL_TEXT;
72
73
74 private String fourthOnlyLabelText = DEFAULT_FOURTH_ONLY_LABEL_TEXT;
75
76
77 private String firstSecondLabelText = DEFAULT_FIRST_SECOND_LABEL_TEXT;
78
79
80 private String firstThirdLabelText = DEFAULT_FIRST_THIRD_LABEL_TEXT;
81
82
83 private String secondThirdLabelText = DEFAULT_SECOND_THIRD_LABEL_TEXT;
84
85
86 private String firstFourthLabelText = DEFAULT_FIRST_FOURTH_LABEL_TEXT;
87
88
89 private String secondFourthLabelText = DEFAULT_SECOND_FOURTH_LABEL_TEXT;
90
91
92 private String thirdFourthLabelText = DEFAULT_THIRD_FOURTH_LABEL_TEXT;
93
94
95 private String firstSecondThirdLabelText = DEFAULT_FIRST_SECOND_THIRD_LABEL_TEXT;
96
97
98 private String firstSecondFourthLabelText = DEFAULT_FIRST_SECOND_FOURTH_LABEL_TEXT;
99
100
101 private String firstThirdFourthLabelText = DEFAULT_FIRST_THIRD_FOURTH_LABEL_TEXT;
102
103
104 private String secondThirdFourthLabelText = DEFAULT_SECOND_THIRD_FOURTH_LABEL_TEXT;
105
106
107 private String intersectionLabelText = DEFAULT_INTERSECTION_LABEL_TEXT;
108
109
110 private String unionLabelText = DEFAULT_UNION_LABEL_TEXT;
111
112
113 private boolean displaySizes = true;
114
115
116 private final JLabel firstLabel = new JLabel();
117
118
119 private final JLabel secondLabel = new JLabel();
120
121
122 private final JLabel thirdLabel = new JLabel();
123
124
125 private final JLabel fourthLabel = new JLabel();
126
127
128 private final JLabel firstOnlyLabel = new JLabel();
129
130
131 private final JLabel secondOnlyLabel = new JLabel();
132
133
134 private final JLabel thirdOnlyLabel = new JLabel();
135
136
137 private final JLabel fourthOnlyLabel = new JLabel();
138
139
140 private final JLabel firstSecondLabel = new JLabel();
141
142
143 private final JLabel firstThirdLabel = new JLabel();
144
145
146 private final JLabel secondThirdLabel = new JLabel();
147
148
149 private final JLabel firstFourthLabel = new JLabel();
150
151
152 private final JLabel secondFourthLabel = new JLabel();
153
154
155 private final JLabel thirdFourthLabel = new JLabel();
156
157
158 private final JLabel firstSecondThirdLabel = new JLabel();
159
160
161 private final JLabel firstSecondFourthLabel = new JLabel();
162
163
164 private final JLabel firstThirdFourthLabel = new JLabel();
165
166
167 private final JLabel secondThirdFourthLabel = new JLabel();
168
169
170 private final JLabel intersectionLabel = new JLabel();
171
172
173 private final JLabel unionLabel = new JLabel();
174
175
176 private final SetChangeListener<E> update = new SetChangeListener<E>()
177 {
178
179 public void setChanged(final SetChangeEvent<E> event)
180 {
181 updateLabels();
182 updateContents();
183 }
184 };
185
186
187 public static final String DEFAULT_FIRST_LABEL_TEXT = "First set";
188
189
190 public static final String DEFAULT_SECOND_LABEL_TEXT = "Second set";
191
192
193 public static final String DEFAULT_THIRD_LABEL_TEXT = "Third set";
194
195
196 public static final String DEFAULT_FOURTH_LABEL_TEXT = "Fourth set";
197
198
199 public static final String DEFAULT_FIRST_ONLY_LABEL_TEXT = "First only";
200
201
202 public static final String DEFAULT_SECOND_ONLY_LABEL_TEXT = "Second only";
203
204
205 public static final String DEFAULT_THIRD_ONLY_LABEL_TEXT = "Third only";
206
207
208 public static final String DEFAULT_FOURTH_ONLY_LABEL_TEXT = "Fourth only";
209
210
211 public static final String DEFAULT_FIRST_SECOND_LABEL_TEXT = "First and second only";
212
213
214 public static final String DEFAULT_FIRST_THIRD_LABEL_TEXT = "First and third only";
215
216
217 public static final String DEFAULT_SECOND_THIRD_LABEL_TEXT = "Second and third only";
218
219
220 public static final String DEFAULT_FIRST_FOURTH_LABEL_TEXT = "First and fourth only";
221
222
223 public static final String DEFAULT_SECOND_FOURTH_LABEL_TEXT = "Second and fourth only";
224
225
226 public static final String DEFAULT_THIRD_FOURTH_LABEL_TEXT = "Third and fourth only";
227
228
229 public static final String DEFAULT_FIRST_SECOND_THIRD_LABEL_TEXT = "First, second, and third only";
230
231
232 public static final String DEFAULT_FIRST_SECOND_FOURTH_LABEL_TEXT = "First, second, and fourth only";
233
234
235 public static final String DEFAULT_FIRST_THIRD_FOURTH_LABEL_TEXT = "First, third, and fourth only";
236
237
238 public static final String DEFAULT_SECOND_THIRD_FOURTH_LABEL_TEXT = "Second, third, and fourth only";
239
240
241 public static final String DEFAULT_INTERSECTION_LABEL_TEXT = "Intersection";
242
243
244 public static final String DEFAULT_UNION_LABEL_TEXT = "Union";
245
246
247
248
249
250 protected AbstractQuaternaryVennDiagram()
251 {
252 super();
253 model = new QuaternaryVennModelImpl<E>();
254
255 installListeners();
256 updateLabels();
257 }
258
259
260
261
262
263
264
265
266
267
268
269
270
271 protected AbstractQuaternaryVennDiagram(final String firstLabelText, final Set<? extends E> first,
272 final String secondLabelText, final Set<? extends E> second,
273 final String thirdLabelText, final Set<? extends E> third,
274 final String fourthLabelText, final Set<? extends E> fourth)
275 {
276 this(firstLabelText,
277 secondLabelText,
278 thirdLabelText,
279 fourthLabelText,
280 new QuaternaryVennModelImpl<E>(first, second, third, fourth));
281 }
282
283
284
285
286
287
288 protected AbstractQuaternaryVennDiagram(final QuaternaryVennModel<E> model)
289 {
290 super();
291 if (model == null)
292 {
293 throw new IllegalArgumentException("model must not be null");
294 }
295 this.model = model;
296
297 installListeners();
298 updateLabels();
299 }
300
301
302
303
304
305
306
307
308
309
310 protected AbstractQuaternaryVennDiagram(final String firstLabelText,
311 final String secondLabelText,
312 final String thirdLabelText,
313 final String fourthLabelText,
314 final QuaternaryVennModel<E> model)
315 {
316 super();
317 if (model == null)
318 {
319 throw new IllegalArgumentException("model must not be null");
320 }
321 this.model = model;
322 this.firstLabelText = firstLabelText;
323 this.secondLabelText = secondLabelText;
324 this.thirdLabelText = thirdLabelText;
325 this.fourthLabelText = fourthLabelText;
326 this.firstOnlyLabelText = firstLabelText + " only";
327 this.secondOnlyLabelText = secondLabelText + " only";
328 this.thirdOnlyLabelText = thirdLabelText + " only";
329 this.fourthOnlyLabelText = fourthLabelText + " only";
330 this.firstSecondLabelText = firstLabelText + " and " + secondLabelText + " only";
331 this.firstThirdLabelText = firstLabelText + " and " + thirdLabelText + " only";
332 this.secondThirdLabelText = secondLabelText + " and " + thirdLabelText + " only";
333 this.firstFourthLabelText = firstLabelText + " and " + fourthLabelText + " only";
334 this.secondFourthLabelText = secondLabelText + " and " + fourthLabelText + " only";
335 this.thirdFourthLabelText = thirdLabelText + " and " + fourthLabelText + " only";
336 this.firstSecondThirdLabelText = firstLabelText + ", " + secondLabelText + ", and " + thirdLabelText + " only";
337 this.firstSecondFourthLabelText = firstLabelText + ", " + secondLabelText + ", and " + fourthLabelText + " only";
338 this.firstThirdFourthLabelText = firstLabelText + ", " + thirdLabelText + ", and " + fourthLabelText + " only";
339 this.secondThirdFourthLabelText = secondLabelText + ", " + thirdLabelText + ", and " + fourthLabelText + " only";
340
341 installListeners();
342 updateLabels();
343 }
344
345
346
347
348 private void installListeners()
349 {
350 model.first().addSetChangeListener(update);
351 model.second().addSetChangeListener(update);
352 model.third().addSetChangeListener(update);
353 model.fourth().addSetChangeListener(update);
354 }
355
356
357
358
359 private void uninstallListeners()
360 {
361 model.first().removeSetChangeListener(update);
362 model.second().removeSetChangeListener(update);
363 model.third().removeSetChangeListener(update);
364 model.fourth().removeSetChangeListener(update);
365 }
366
367
368
369
370 private void updateLabels()
371 {
372 firstLabel.setText(buildLabel(firstLabelText, model.first().size()));
373 secondLabel.setText(buildLabel(secondLabelText, model.second().size()));
374 thirdLabel.setText(buildLabel(thirdLabelText, model.third().size()));
375 fourthLabel.setText(buildLabel(fourthLabelText, model.fourth().size()));
376 firstOnlyLabel.setText(buildLabel(firstOnlyLabelText, model.firstOnly().size()));
377 secondOnlyLabel.setText(buildLabel(secondOnlyLabelText, model.secondOnly().size()));
378 thirdOnlyLabel.setText(buildLabel(thirdOnlyLabelText, model.thirdOnly().size()));
379 fourthOnlyLabel.setText(buildLabel(fourthOnlyLabelText, model.fourthOnly().size()));
380 firstSecondLabel.setText(buildLabel(firstSecondLabelText, model.firstSecond().size()));
381 firstThirdLabel.setText(buildLabel(firstThirdLabelText, model.firstThird().size()));
382 secondThirdLabel.setText(buildLabel(secondThirdLabelText, model.secondThird().size()));
383 firstFourthLabel.setText(buildLabel(firstFourthLabelText, model.firstFourth().size()));
384 secondFourthLabel.setText(buildLabel(secondFourthLabelText, model.secondFourth().size()));
385 thirdFourthLabel.setText(buildLabel(thirdFourthLabelText, model.thirdFourth().size()));
386 firstSecondThirdLabel.setText(buildLabel(firstSecondThirdLabelText, model.firstSecondThird().size()));
387 firstSecondFourthLabel.setText(buildLabel(firstSecondFourthLabelText, model.firstSecondFourth().size()));
388 firstThirdFourthLabel.setText(buildLabel(firstThirdFourthLabelText, model.firstThirdFourth().size()));
389 secondThirdFourthLabel.setText(buildLabel(secondThirdFourthLabelText, model.secondThirdFourth().size()));
390 intersectionLabel.setText(buildLabel(intersectionLabelText, model.intersection().size()));
391 unionLabel.setText(buildLabel(unionLabelText, model.union().size()));
392 }
393
394
395
396
397 protected abstract void updateContents();
398
399
400
401
402
403
404
405
406 private String buildLabel(final String labelText, final int size)
407 {
408 StringBuilder sb = new StringBuilder();
409 sb.append(labelText);
410 if (displaySizes)
411 {
412 sb.append(" (");
413 sb.append(size);
414 sb.append(")");
415 }
416 sb.append(":");
417 return sb.toString();
418 }
419
420
421
422
423
424
425 public final QuaternaryVennModel<E> getModel()
426 {
427 return model;
428 }
429
430
431
432
433
434
435
436
437 public final void setModel(final QuaternaryVennModel<E> model)
438 {
439 if (model == null)
440 {
441 throw new IllegalArgumentException("model must not be null");
442 }
443 QuaternaryVennModel<E> oldModel = this.model;
444 uninstallListeners();
445 this.model = model;
446 installListeners();
447 updateLabels();
448 firePropertyChange("model", oldModel, this.model);
449 }
450
451
452
453
454
455
456 public final boolean getDisplaySizes()
457 {
458 return displaySizes;
459 }
460
461
462
463
464
465
466
467
468 public final void setDisplaySizes(final boolean displaySizes)
469 {
470 boolean oldDisplaySizes = this.displaySizes;
471 this.displaySizes = displaySizes;
472 firePropertyChange("displaySizes", oldDisplaySizes, this.displaySizes);
473 }
474
475
476
477
478
479
480 public final String getFirstLabelText()
481 {
482 return firstLabelText;
483 }
484
485
486
487
488
489
490
491
492 public final void setFirstLabelText(final String firstLabelText)
493 {
494 String oldFirstLabelText = this.firstLabelText;
495 this.firstLabelText = firstLabelText;
496 firstLabel.setText(buildLabel(this.firstLabelText, model.first().size()));
497 firePropertyChange("firstLabelText", this.firstLabelText, oldFirstLabelText);
498 }
499
500
501
502
503
504
505 public final String getSecondLabelText()
506 {
507 return secondLabelText;
508 }
509
510
511
512
513
514
515
516
517 public final void setSecondLabelText(final String secondLabelText)
518 {
519 String oldSecondLabelText = this.secondLabelText;
520 this.secondLabelText = secondLabelText;
521 secondLabel.setText(buildLabel(this.secondLabelText, model.second().size()));
522 firePropertyChange("secondLabelText", this.secondLabelText, oldSecondLabelText);
523 }
524
525
526
527
528
529
530 public final String getThirdLabelText()
531 {
532 return thirdLabelText;
533 }
534
535
536
537
538
539
540
541
542 public final void setThirdLabelText(final String thirdLabelText)
543 {
544 String oldThirdLabelText = this.thirdLabelText;
545 this.thirdLabelText = thirdLabelText;
546 thirdLabel.setText(buildLabel(this.thirdLabelText, model.third().size()));
547 firePropertyChange("thirdLabelText", this.thirdLabelText, oldThirdLabelText);
548 }
549
550
551
552
553
554
555 public final String getFourthLabelText()
556 {
557 return fourthLabelText;
558 }
559
560
561
562
563
564
565
566
567 public final void setFourthLabelText(final String fourthLabelText)
568 {
569 String oldFourthLabelText = this.fourthLabelText;
570 this.fourthLabelText = fourthLabelText;
571 fourthLabel.setText(buildLabel(this.fourthLabelText, model.fourth().size()));
572 firePropertyChange("fourthLabelText", this.fourthLabelText, oldFourthLabelText);
573 }
574
575
576
577
578
579
580 public final String getFirstOnlyLabelText()
581 {
582 return firstOnlyLabelText;
583 }
584
585
586
587
588
589
590
591
592 public final void setFirstOnlyLabelText(final String firstOnlyLabelText)
593 {
594 String oldFirstOnlyLabelText = this.firstOnlyLabelText;
595 this.firstOnlyLabelText = firstOnlyLabelText;
596 firstOnlyLabel.setText(buildLabel(this.firstOnlyLabelText, model.firstOnly().size()));
597 firePropertyChange("firstOnlyLabelText", this.firstOnlyLabelText, oldFirstOnlyLabelText);
598 }
599
600
601
602
603
604
605 public final String getSecondOnlyLabelText()
606 {
607 return secondOnlyLabelText;
608 }
609
610
611
612
613
614
615
616
617 public final void setSecondOnlyLabelText(final String secondOnlyLabelText)
618 {
619 String oldSecondOnlyLabelText = this.secondOnlyLabelText;
620 this.secondOnlyLabelText = secondOnlyLabelText;
621 secondOnlyLabel.setText(buildLabel(this.secondOnlyLabelText, model.secondOnly().size()));
622 firePropertyChange("secondOnlyLabelText", this.secondOnlyLabelText, oldSecondOnlyLabelText);
623 }
624
625
626
627
628
629
630 public final String getThirdOnlyLabelText()
631 {
632 return thirdOnlyLabelText;
633 }
634
635
636
637
638
639
640
641
642 public final void setThirdOnlyLabelText(final String thirdOnlyLabelText)
643 {
644 String oldThirdOnlyLabelText = this.thirdOnlyLabelText;
645 this.thirdOnlyLabelText = thirdOnlyLabelText;
646 thirdOnlyLabel.setText(buildLabel(this.thirdOnlyLabelText, model.thirdOnly().size()));
647 firePropertyChange("thirdOnlyLabelText", this.thirdOnlyLabelText, oldThirdOnlyLabelText);
648 }
649
650
651
652
653
654
655 public final String getFourthOnlyLabelText()
656 {
657 return fourthOnlyLabelText;
658 }
659
660
661
662
663
664
665
666
667 public final void setFourthOnlyLabelText(final String fourthOnlyLabelText)
668 {
669 String oldFourthOnlyLabelText = this.fourthOnlyLabelText;
670 this.fourthOnlyLabelText = fourthOnlyLabelText;
671 fourthOnlyLabel.setText(buildLabel(this.fourthOnlyLabelText, model.fourthOnly().size()));
672 firePropertyChange("fourthOnlyLabelText", this.fourthOnlyLabelText, oldFourthOnlyLabelText);
673 }
674
675
676
677
678
679
680 public final String getFirstSecondLabelText()
681 {
682 return firstSecondLabelText;
683 }
684
685
686
687
688
689
690
691
692 public final void setFirstSecondLabelText(final String firstSecondLabelText)
693 {
694 String oldFirstSecondLabelText = this.firstSecondLabelText;
695 this.firstSecondLabelText = firstSecondLabelText;
696 firstSecondLabel.setText(buildLabel(this.firstSecondLabelText, model.firstSecond().size()));
697 firePropertyChange("firstSecondLabelText", this.firstSecondLabelText, oldFirstSecondLabelText);
698 }
699
700
701
702
703
704
705 public final String getFirstThirdLabelText()
706 {
707 return firstThirdLabelText;
708 }
709
710
711
712
713
714
715
716
717 public final void setFirstThirdLabelText(final String firstThirdLabelText)
718 {
719 String oldFirstThirdLabelText = this.firstThirdLabelText;
720 this.firstThirdLabelText = firstThirdLabelText;
721 firstThirdLabel.setText(buildLabel(this.firstThirdLabelText, model.firstThird().size()));
722 firePropertyChange("firstThirdLabelText", this.firstThirdLabelText, oldFirstThirdLabelText);
723 }
724
725
726
727
728
729
730 public final String getSecondThirdLabelText()
731 {
732 return secondThirdLabelText;
733 }
734
735
736
737
738
739
740
741
742 public final void setSecondThirdLabelText(final String secondThirdLabelText)
743 {
744 String oldSecondThirdLabelText = this.secondThirdLabelText;
745 this.secondThirdLabelText = secondThirdLabelText;
746 secondThirdLabel.setText(buildLabel(this.secondThirdLabelText, model.secondThird().size()));
747 firePropertyChange("secondThirdLabelText", this.secondThirdLabelText, oldSecondThirdLabelText);
748 }
749
750
751
752
753
754
755 public final String getIntersectionLabelText()
756 {
757 return intersectionLabelText;
758 }
759
760
761
762
763
764
765
766
767 public final void setIntersectionLabelText(final String intersectionLabelText)
768 {
769 String oldIntersectionLabelText = this.intersectionLabelText;
770 this.intersectionLabelText = intersectionLabelText;
771 intersectionLabel.setText(buildLabel(this.intersectionLabelText, model.intersection().size()));
772 firePropertyChange("intersectionLabelText", this.intersectionLabelText, oldIntersectionLabelText);
773 }
774
775
776
777
778
779
780 public final String getUnionLabelText()
781 {
782 return unionLabelText;
783 }
784
785
786
787
788
789
790
791
792 public final void setUnionLabelText(final String unionLabelText)
793 {
794 String oldUnionLabelText = this.unionLabelText;
795 this.unionLabelText = unionLabelText;
796 unionLabel.setText(buildLabel(this.unionLabelText, model.union().size()));
797 firePropertyChange("unionLabelText", this.unionLabelText, oldUnionLabelText);
798 }
799
800
801
802
803
804
805
806
807
808
809 public final JLabel getFirstLabel()
810 {
811 return firstLabel;
812 }
813
814
815
816
817
818
819
820
821
822
823 public final JLabel getSecondLabel()
824 {
825 return secondLabel;
826 }
827
828
829
830
831
832
833
834
835
836
837 public final JLabel getThirdLabel()
838 {
839 return thirdLabel;
840 }
841
842
843
844
845
846
847
848
849
850
851 public final JLabel getFourthLabel()
852 {
853 return fourthLabel;
854 }
855
856
857
858
859
860
861
862
863
864
865 public final JLabel getFirstOnlyLabel()
866 {
867 return firstOnlyLabel;
868 }
869
870
871
872
873
874
875
876
877
878
879 public final JLabel getSecondOnlyLabel()
880 {
881 return secondOnlyLabel;
882 }
883
884
885
886
887
888
889
890
891
892
893 public final JLabel getThirdOnlyLabel()
894 {
895 return thirdOnlyLabel;
896 }
897
898
899
900
901
902
903
904
905
906
907 public final JLabel getFourthOnlyLabel()
908 {
909 return fourthOnlyLabel;
910 }
911
912
913
914
915
916
917
918
919
920
921 public final JLabel getFirstSecondLabel()
922 {
923 return firstSecondLabel;
924 }
925
926
927
928
929
930
931
932
933
934
935 public final JLabel getFirstThirdLabel()
936 {
937 return firstThirdLabel;
938 }
939
940
941
942
943
944
945
946
947
948
949 public final JLabel getSecondThirdLabel()
950 {
951 return secondThirdLabel;
952 }
953
954
955
956
957
958
959
960
961
962
963 public final JLabel getIntersectionLabel()
964 {
965 return intersectionLabel;
966 }
967
968
969
970
971
972
973
974
975
976
977 public final JLabel getUnionLabel()
978 {
979 return unionLabel;
980 }
981
982
983
984
985
986
987 public final String getFirstFourthLabelText()
988 {
989 return firstFourthLabelText;
990 }
991
992
993
994
995
996
997
998
999 public final void setFirstFourthLabelText(final String firstFourthLabelText)
1000 {
1001 String oldFirstFourthLabelText = this.firstFourthLabelText;
1002 this.firstFourthLabelText = firstFourthLabelText;
1003 firstFourthLabel.setText(buildLabel(this.firstFourthLabelText, model.firstFourth().size()));
1004 firePropertyChange("firstFourthLabelText", this.firstFourthLabelText, oldFirstFourthLabelText);
1005 }
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016 public final JLabel getFirstFourthLabel()
1017 {
1018 return firstFourthLabel;
1019 }
1020
1021
1022
1023
1024
1025
1026 public final String getSecondFourthLabelText()
1027 {
1028 return secondFourthLabelText;
1029 }
1030
1031
1032
1033
1034
1035
1036
1037
1038 public final void setSecondFourthLabelText(final String secondFourthLabelText)
1039 {
1040 String oldSecondFourthLabelText = this.secondFourthLabelText;
1041 this.secondFourthLabelText = secondFourthLabelText;
1042 secondFourthLabel.setText(buildLabel(this.secondFourthLabelText, model.secondFourth().size()));
1043 firePropertyChange("secondFourthLabelText", this.secondFourthLabelText, oldSecondFourthLabelText);
1044 }
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055 public final JLabel getSecondFourthLabel()
1056 {
1057 return secondFourthLabel;
1058 }
1059
1060
1061
1062
1063
1064
1065 public final String getThirdFourthLabelText()
1066 {
1067 return thirdFourthLabelText;
1068 }
1069
1070
1071
1072
1073
1074
1075
1076
1077 public final void setThirdFourthLabelText(final String thirdFourthLabelText)
1078 {
1079 String oldThirdFourthLabelText = this.thirdFourthLabelText;
1080 this.thirdFourthLabelText = thirdFourthLabelText;
1081 thirdFourthLabel.setText(buildLabel(this.thirdFourthLabelText, model.thirdFourth().size()));
1082 firePropertyChange("thirdFourthLabelText", this.thirdFourthLabelText, oldThirdFourthLabelText);
1083 }
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094 public final JLabel getThirdFourthLabel()
1095 {
1096 return thirdFourthLabel;
1097 }
1098
1099
1100
1101
1102
1103
1104
1105 public final String getFirstSecondThirdLabelText()
1106 {
1107 return firstSecondThirdLabelText;
1108 }
1109
1110
1111
1112
1113
1114
1115
1116
1117 public final void setFirstSecondThirdLabelText(final String firstSecondThirdLabelText)
1118 {
1119 String oldFirstSecondThirdLabelText = this.firstSecondThirdLabelText;
1120 this.firstSecondThirdLabelText = firstSecondThirdLabelText;
1121 firstSecondThirdLabel.setText(buildLabel(this.firstSecondThirdLabelText, model.firstSecondThird().size()));
1122 firePropertyChange("firstSecondThirdLabelText", this.firstSecondThirdLabelText, oldFirstSecondThirdLabelText);
1123 }
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134 public final JLabel getFirstSecondThirdLabel()
1135 {
1136 return firstSecondThirdLabel;
1137 }
1138
1139
1140
1141
1142
1143
1144
1145 public final String getFirstSecondFourthLabelText()
1146 {
1147 return firstSecondFourthLabelText;
1148 }
1149
1150
1151
1152
1153
1154
1155
1156
1157 public final void setFirstSecondFourthLabelText(final String firstSecondFourthLabelText)
1158 {
1159 String oldFirstSecondFourthLabelText = this.firstSecondFourthLabelText;
1160 this.firstSecondFourthLabelText = firstSecondFourthLabelText;
1161 firstSecondFourthLabel.setText(buildLabel(this.firstSecondFourthLabelText, model.firstSecondFourth().size()));
1162 firePropertyChange("firstSecondFourthLabelText",
1163 this.firstSecondFourthLabelText,
1164 oldFirstSecondFourthLabelText);
1165 }
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176 public final JLabel getFirstSecondFourthLabel()
1177 {
1178 return firstSecondFourthLabel;
1179 }
1180
1181
1182
1183
1184
1185
1186
1187 public final String getFirstThirdFourthLabelText()
1188 {
1189 return firstThirdFourthLabelText;
1190 }
1191
1192
1193
1194
1195
1196
1197
1198
1199 public final void setFirstThirdFourthLabelText(final String firstThirdFourthLabelText)
1200 {
1201 String oldFirstThirdFourthLabelText = this.firstThirdFourthLabelText;
1202 this.firstThirdFourthLabelText = firstThirdFourthLabelText;
1203 firstThirdFourthLabel.setText(buildLabel(this.firstThirdFourthLabelText, model.firstThirdFourth().size()));
1204 firePropertyChange("firstThirdFourthLabelText", this.firstThirdFourthLabelText, oldFirstThirdFourthLabelText);
1205 }
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216 public final JLabel getFirstThirdFourthLabel()
1217 {
1218 return firstThirdFourthLabel;
1219 }
1220
1221
1222
1223
1224
1225
1226
1227 public final String getSecondThirdFourthLabelText()
1228 {
1229 return secondThirdFourthLabelText;
1230 }
1231
1232
1233
1234
1235
1236
1237
1238
1239 public final void setSecondThirdFourthLabelText(final String secondThirdFourthLabelText)
1240 {
1241 String oldSecondThirdFourthLabelText = this.secondThirdFourthLabelText;
1242 this.secondThirdFourthLabelText = secondThirdFourthLabelText;
1243 secondThirdFourthLabel.setText(buildLabel(this.secondThirdFourthLabelText, model.secondThirdFourth().size()));
1244 firePropertyChange("secondThirdFourthLabelText",
1245 this.secondThirdFourthLabelText,
1246 oldSecondThirdFourthLabelText);
1247 }
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258 public final JLabel getSecondThirdFourthLabel()
1259 {
1260 return secondThirdFourthLabel;
1261 }
1262 }