@Override
 void doPropertyChange(PropertyChangeEvent evt) {
   super.doPropertyChange(evt);
   if (checkIsFieldChange(Field.SEMESTER, evt)) {
     spinnerSemester.setValue(kurseSemesterwahlModel.getSemester());
   }
 }
 private void onSemesterSelected() {
   LOGGER.trace(
       "KurseSemesterwahlController Event Semester selected =" + spinnerSemester.getValue());
   boolean equalFieldAndModelValue =
       equalsNullSafe(spinnerSemester.getValue(), kurseSemesterwahlModel.getSemester());
   setModelSemester();
   if (equalFieldAndModelValue && isModelValidationMode()) {
     // Wenn Field und Model den gleichen Wert haben, erfolgt kein PropertyChangeEvent. Deshalb
     // muss hier die Validierung angestossen werden.
     LOGGER.trace("Validierung wegen equalFieldAndModelValue");
     validate();
   }
 }
 public void setSpinnerSemester(JSpinner spinnerSemester) {
   this.spinnerSemester = spinnerSemester;
   java.util.List<Semester> semesterList = svmContext.getSvmModel().getSemestersAll();
   if (semesterList.isEmpty()) {
     // keine Semester erfasst
     SpinnerModel spinnerModel = new SpinnerListModel(new String[] {""});
     spinnerSemester.setModel(spinnerModel);
     spinnerSemester.setEnabled(false);
     return;
   }
   Semester[] semesters = semesterList.toArray(new Semester[semesterList.size()]);
   SpinnerModel spinnerModelSemester = new SpinnerListModel(semesters);
   spinnerSemester.setModel(spinnerModelSemester);
   spinnerSemester.addChangeListener(
       new ChangeListener() {
         @Override
         public void stateChanged(ChangeEvent e) {
           onSemesterSelected();
         }
       });
   // Model initialisieren
   kurseSemesterwahlModel.setSemester(
       kurseSemesterwahlModel.getInitSemester(svmContext.getSvmModel()));
 }
 private void onSuchen() {
   LOGGER.trace("KurseSemesterwahlController OK gedrückt");
   if (!isModelValidationMode() && !validateOnSpeichern()) {
     btnOk.setFocusPainted(false);
     return;
   }
   setWaitCursorAllComponents();
   KurseTableData kurseTableData = kurseSemesterwahlModel.suchen();
   KurseTableModel kurseTableModel = new KurseTableModel(kurseTableData);
   String titel =
       "Kurse "
           + kurseSemesterwahlModel.getSemester().getSemesterbezeichnung()
           + " "
           + kurseSemesterwahlModel.getSemester().getSchuljahr();
   KursePanel kursePanel =
       new KursePanel(svmContext, kurseSemesterwahlModel, kurseTableModel, titel);
   kursePanel.addCloseListener(closeListener);
   resetCursorAllComponents();
   nextPanelListener.actionPerformed(
       new ActionEvent(
           new Object[] {kursePanel.$$$getRootComponent$$$(), titel},
           ActionEvent.ACTION_PERFORMED,
           "Suchresultat verfügbar"));
 }
 public void constructionDone() {
   kurseSemesterwahlModel.initializeCompleted();
 }
 private void setModelSemester() {
   makeErrorLabelInvisible(Field.SEMESTER_KURS);
   kurseSemesterwahlModel.setSemester((Semester) spinnerSemester.getValue());
 }