code: @Override
      protected void defineWidgets() {
  
          // initialize the object to use for the dialog
          initLoginMessageObject();
  
          setKeyPrefix(KEY_PREFIX);
  
          // required to read the default values for the optional context parameters for the widgets
          CmsLoginMessage def = new CmsLoginMessage();
  
          addWidget(new CmsWidgetDialogParameter(m_loginMessage, "enabled", PAGES[0], new CmsCheckboxWidget()));
          addWidget(new CmsWidgetDialogParameter(m_loginMessage, "message", PAGES[0], new CmsTextareaWidget()));
          addWidget(new CmsWidgetDialogParameter(m_loginMessage, "loginForbidden", PAGES[0], new CmsCheckboxWidget()));
          addWidget(
              new CmsWidgetDialogParameter(
                  m_loginMessage,
                  "timeStart",
                  String.valueOf(def.getTimeStart()),
                  PAGES[0],
                  new CmsCalendarWidget(),
                  0,
                  1));
          addWidget(
              new CmsWidgetDialogParameter(
                  m_loginMessage,
                  "timeEnd",
                  String.valueOf(def.getTimeEnd()),
                  PAGES[0],
                  new CmsCalendarWidget(),
                  0,
                  1));
      }
docs: Creates the list of widgets for this dialog.<p>