コード例 #1
0
  protected void setup() {
    RootPanel.get().add(mainPresenter.getDisplay().asWidget());

    mainPresenter.bind();
    History.addValueChangeHandler(this);

    eventBus.addHandler(
        LoginSuccessfulEvent.TYPE,
        new LoginSuccessfulEventHandler() {
          @Override
          public void loginSuccessful(LoginSuccessfulEvent event) {
            History.newItem(getPreviousHistoryToken());
          }
        });

    eventBus.addHandler(
        LoginRequiredEvent.TYPE,
        new LoginRequiredEventHandler() {
          @Override
          public void loginRequired(LoginRequiredEvent event) {
            if (!AppPlace.HOME.equals(getPlace(History.getToken()))) {
              History.newItem(AppPlace.HOME.getToken());
            }
          }
        });

    switchSection(History.getToken());
  }
コード例 #2
0
ファイル: MainView.java プロジェクト: x4n93l/deck
  @Override
  protected void onFinishInflate() {
    super.onFinishInflate();

    if (isInEditMode()) {
      return;
    }

    presenter.takeView(this);
  }
コード例 #3
0
  @Override
  public final void initialize(final URL location, final ResourceBundle resources) {

    c =
        cgu.getContactFromGroup(
            Main.getDefaultGroup(),
            MainPresenter.getData()
                .get(
                    MainPresenter.getMainPresenterInstance()
                        .getMainTable()
                        .getSelectionModel()
                        .getSelectedIndex())
                .getId());
    setupGroups();
    try {
      setupTextFields();
    } catch (IOException e) {
      logger.log(Level.SEVERE, "Error loading image");
    }
  }
コード例 #4
0
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    DaggerInjector.get().inject(this);
    mainPresenter.setCallBack(this);
    btn = (Button) findViewById(R.id.button);
    textView = (TextView) findViewById(R.id.text);

    btn.setOnClickListener(
        new View.OnClickListener() {
          @Override
          public void onClick(View view) {

            mainPresenter.doSomeWork();
          }
        });
  }
コード例 #5
0
 @Override
 protected void onResume() {
   super.onResume();
   mPresenter.getGuidesNew();
 }
コード例 #6
0
 @Override
 public void onLoadMore() {
   mPresenter.getGuidesMore();
 }
コード例 #7
0
 @Override
 protected void onDestroy() {
   super.onDestroy();
   mainPresenter.clear();
 }
コード例 #8
0
  public void switchSection(String token) {
    popup.hide();
    tokenHistory.add(token);
    Map<String, String> parameters = getHistoryTokenParameters(token);
    AppPlace place = getPlace(token);

    if (mainPresenter != null) {
      mainPresenter.clearNotifications();
    }

    if (ClientSessionUtil.checkSession()) {
      switch (place) {
        case HOME:
          HomePresenter homePresenter = new HomePresenter(new HomeView(), eventBus);
          homePresenter.bind();
          getLayout().clear();
          getLayout().add(homePresenter.getDisplay().asWidget());
          break;
        case REQUEST:
          RequestPresenter requestPresenter = new RequestPresenter(new RequestView(), eventBus);
          requestPresenter.bind();
          getLayout().clear();
          getLayout().add(requestPresenter.getDisplay().asWidget());
          break;
        case LOGOUT:
          ClientSessionUtil.destroySession();
          eventBus.fireEvent(new LoginRequiredEvent());
          break;
        case REQUESTSTATUS:
          try {
            Integer requestId = Integer.parseInt(parameters.get("requestId"));
            RequestStatusPresenter requestStatusPresenter =
                new RequestStatusPresenter(new RequestStatusView(), eventBus);
            requestStatusPresenter.bind();
            requestStatusPresenter.showRequest(requestId);
            getLayout().clear();
            getLayout().add(requestStatusPresenter.getDisplay().asWidget());
          } catch (Exception e) {
            showNotification(
                "Id incorrecta: No se puede cargar la solicitud", NotificationEventType.ERROR);
          }
          break;
        case EDITREQUEST:
          try {
            Integer requestId = Integer.parseInt(parameters.get("requestId"));
            RequestEditPresenter editPresenter =
                new RequestEditPresenter(new RequestEditView(), eventBus);
            editPresenter.bind();
            editPresenter.showRequest(requestId);
            getLayout().clear();
            getLayout().add(editPresenter.getDisplay().asWidget());
          } catch (Exception e) {
            showNotification(
                "Id incorrecta: No se puede cargar la solicitud", NotificationEventType.ERROR);
          }
          break;
        case RESPONSE:
          try {
            Integer requestId = Integer.parseInt(parameters.get("requestId"));
            RequestResponsePresenter requestResponsePresenter =
                new RequestResponsePresenter(new RequestResponseView(), eventBus);
            requestResponsePresenter.bind();
            requestResponsePresenter.showRequest(requestId);
            getLayout().clear();
            getLayout().add(requestResponsePresenter.getDisplay().asWidget());
          } catch (Exception e) {
            showNotification(
                "Id incorrecta: No se puede cargar la solicitud", NotificationEventType.ERROR);
          }
          break;
        case LIST:
          try {
            String listType = parameters.get("type");
            RequestListPresenter requestListPresenter =
                new RequestListPresenter(new RequestListView(), eventBus);
            requestListPresenter.bind();
            requestListPresenter.loadRequests(0, 100, listType);
            getLayout().clear();
            getLayout().add(requestListPresenter.getDisplay().asWidget());
          } catch (Exception e) {
            showNotification(
                "Tipo de lista incorrecto: No se puede cargar la lista",
                NotificationEventType.ERROR);
          }
          break;
        case STATISTICS:
          StatisticsPresenter statistics = new StatisticsPresenter(new StatisticsView(), eventBus);
          statistics.bind();
          getLayout().clear();
          getLayout().add(statistics.getDisplay().asWidget());
          break;
        case ABOUTPROJECT:
          AboutProjectPresenter aboutProjectPresenter =
              new AboutProjectPresenter(new AboutProjectView(), eventBus);
          aboutProjectPresenter.bind();
          getLayout().clear();
          getLayout().add(aboutProjectPresenter.getDisplay().asWidget());
          break;
        case ASOCIATES:
          AsociatesPresenter asociatesPresenter =
              new AsociatesPresenter(new AsociatesView(), eventBus);
          asociatesPresenter.bind();
          getLayout().clear();
          getLayout().add(asociatesPresenter.getDisplay().asWidget());
          break;
        case USERPROFILE:
          UserProfileEditPresenter userProfilePresenter =
              new UserProfileEditPresenter(new UserProfileEditView(), eventBus);
          userProfilePresenter.bind();
          getLayout().clear();
          getLayout().add(userProfilePresenter.getDisplay().asWidget());
          break;
        default:
          History.newItem(AppPlace.HOME.toString());
      }
    } else {
      switch (place) {
        case HOME:
          HomePresenter homePresenter = new HomePresenter(new HomeView(), eventBus);
          homePresenter.bind();
          getLayout().clear();
          getLayout().add(homePresenter.getDisplay().asWidget());
          break;
        case REQUEST:
        case LOGIN:
          LoginPresenter loginPresenter = new LoginPresenter(new LoginView(), eventBus);
          loginPresenter.bind();
          popup.setModal(true);
          popup.setGlassEnabled(true);
          popup.clear();
          popup.add(loginPresenter.getDisplay().asWidget());
          popup.center();
          break;
        case REGISTER:
          RegisterPresenter registerPresenter = new RegisterPresenter(new RegisterView(), eventBus);
          registerPresenter.bind();
          getLayout().clear();
          getLayout().add(registerPresenter.getDisplay().asWidget());
          break;
        case RESPONSE:
          try {
            Integer requestId = Integer.parseInt(parameters.get("requestId"));
            RequestResponsePresenter requestResponsePresenter =
                new RequestResponsePresenter(new RequestResponseView(), eventBus);
            requestResponsePresenter.bind();
            requestResponsePresenter.showRequest(requestId);
            getLayout().clear();
            getLayout().add(requestResponsePresenter.getDisplay().asWidget());
          } catch (Exception e) {
            showNotification(
                "Id incorrecta: No se puede cargar la solicitud", NotificationEventType.ERROR);
          }
          break;
        case LIST:
          try {
            String listType = parameters.get("type");
            RequestListPresenter requtesListPresenter =
                new RequestListPresenter(new RequestListView(), eventBus);
            requtesListPresenter.bind();
            requtesListPresenter.loadRequests(0, 100, listType);
            getLayout().clear();
            getLayout().add(requtesListPresenter.getDisplay().asWidget());
          } catch (Exception e) {
            showNotification(
                "Tipo de lista incorrecto: No se puede cargar la lista",
                NotificationEventType.ERROR);
          }
          break;
        case STATISTICS:
          StatisticsPresenter statistics = new StatisticsPresenter(new StatisticsView(), eventBus);
          statistics.bind();
          getLayout().clear();
          getLayout().add(statistics.getDisplay().asWidget());
          break;
        case ABOUTPROJECT:
          AboutProjectPresenter aboutProjectPresenter =
              new AboutProjectPresenter(new AboutProjectView(), eventBus);
          aboutProjectPresenter.bind();
          getLayout().clear();
          getLayout().add(aboutProjectPresenter.getDisplay().asWidget());
          break;
        case ASOCIATES:
          AsociatesPresenter asociatesPresenter =
              new AsociatesPresenter(new AsociatesView(), eventBus);
          asociatesPresenter.bind();
          getLayout().clear();
          getLayout().add(asociatesPresenter.getDisplay().asWidget());
          break;
        case PASSWORDRECOVERY:
          PasswordRecoveryPresenter passwordRecoveryPresenter =
              new PasswordRecoveryPresenter(new PasswordRecoveryView(), eventBus);
          passwordRecoveryPresenter.bind();
          getLayout().clear();
          getLayout().add(passwordRecoveryPresenter.getDisplay().asWidget());
          break;
        default:
          History.newItem(AppPlace.HOME.toString());
      }
    }
  }
コード例 #9
0
 public FlowPanel getLayout() {
   return mainPresenter.getDisplay().getLayout();
 }
コード例 #10
0
  /** @throws StringNotValidException a */
  public final void onBtnSaveClick() throws StringNotValidException {

    String firstName;
    String lastName;
    TableMain tm;

    try {
      firstName = StringUtils.defaultIfBlank(txtFirstName.getText(), "MusterName");
      lastName = StringUtils.defaultIfBlank(txtLastName.getText(), "MusterName");
      c.setFirstName(firstName);
      c.setLastName(lastName);

      // update table view with name only
      tm =
          MainPresenter.getData()
              .get(
                  MainPresenter.getMainPresenterInstance()
                      .getMainTable()
                      .getSelectionModel()
                      .getSelectedIndex());
      tm.setFirstName(firstName);
      tm.setLastName(lastName);

      // set rest of contact information
      c.setEmail(StringUtils.defaultIfBlank(txtEmail.getText(), "MusterEmail"));
      c.setPhoneNumber(StringUtils.defaultIfBlank(txtPhoneNumber.getText(), "MusterNummer"));
      if (contactImage != null) {
        c.setPhoto(contactImage);
      }
      c.getAddress().setZipCode(StringUtils.defaultString(txtZipCode.getText(), "12345"));
      c.getAddress().setStreet(StringUtils.defaultIfBlank(txtStreet.getText(), "MusterStraße"));
      c.getAddress().setCity(StringUtils.defaultIfBlank(txtCity.getText(), "MusterStadt"));
      c.getAddress().setCountry(StringUtils.defaultIfBlank(txtCountry.getText(), "MusterLand"));

      int housenumber = 0;

      if (!StringUtils.isNumeric(txtHouseNumber.getText()) || (txtHouseNumber.equals("0"))) {
        throw new HouseNumberNotValidException("Diese Hausnummer ist nicht erlaubt");
      }
      housenumber = Integer.parseInt(txtHouseNumber.getText());
      if (housenumber > 300) {
        throw new HouseNumberNotValidException(
            "Hausnummer zu groß: Maximal erlaubte Hausnummer '300'");
      }
      c.getAddress().setHouseNumber(housenumber);

      txtFirstName.clear();
      txtLastName.clear();
      txtBorn.clear();
      txtCity.clear();
      txtEmail.clear();
      txtHouseNumber.clear();
      txtZipCode.clear();
      txtPhoneNumber.clear();

      onBtnBackClick();
      logger.log(Level.INFO, "New Information saved:");

    } catch (Exception e) {
      logger.log(Level.SEVERE, e.getMessage());
    }
  }
コード例 #11
0
ファイル: MainView.java プロジェクト: x4n93l/deck
  @Override
  protected void onDetachedFromWindow() {
    super.onDetachedFromWindow();

    presenter.dropView(this);
  }
コード例 #12
0
ファイル: MainView.java プロジェクト: x4n93l/deck
 public Flow getFlow() {
   return presenter.getFlow();
 }
コード例 #13
0
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    final MainPresenter presenter = getRetentionFragment(savedInstanceState).presenter();

    setContentView(R.layout.main_activity);
    final RecyclerView recyclerView = (RecyclerView) findViewById(R.id.main_activity_recycler_view);
    final LinearLayoutManager layout =
        new LinearLayoutManager(this, LinearLayoutManager.VERTICAL, false);
    recyclerView.setLayoutManager(layout);
    final MainAdapter adapter = new MainAdapter();
    recyclerView.setAdapter(adapter);
    recyclerView.setItemAnimator(new DefaultItemAnimator());

    final BehaviorSubject<Boolean> isLastSubject = BehaviorSubject.create(true);
    recyclerView.setOnScrollListener(
        new RecyclerView.OnScrollListener() {
          boolean manualScrolling = false;

          @Override
          public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
            if (newState == RecyclerView.SCROLL_STATE_DRAGGING) {
              manualScrolling = true;
            }
            if (manualScrolling && newState == RecyclerView.SCROLL_STATE_IDLE) {
              manualScrolling = false;

              final int lastVisibleItemPosition = layout.findLastVisibleItemPosition();
              final int previousItemsCount = adapter.getItemCount();
              final boolean isLast = previousItemsCount - 1 == lastVisibleItemPosition;
              isLastSubject.onNext(isLast);
            }
          }
        });

    subs =
        new CompositeSubscription(
            isLastSubject.subscribe(presenter.lastItemInViewObserver()),
            presenter
                .itemsWithScrollObservable()
                .subscribe(
                    new Action1<MainPresenter.ItemsWithScroll>() {
                      @Override
                      public void call(final MainPresenter.ItemsWithScroll itemsWithScroll) {
                        adapter.call(itemsWithScroll.items());
                        if (itemsWithScroll.shouldScroll()) {
                          recyclerView.post(
                              new Runnable() {
                                @Override
                                public void run() {
                                  recyclerView.smoothScrollToPosition(
                                      itemsWithScroll.scrollToPosition());
                                }
                              });
                        }
                      }
                    }),
            presenter
                .connectButtonEnabledObservable()
                .subscribe(ViewActions.setEnabled(findViewById(R.id.main_activity_connect_button))),
            presenter
                .disconnectButtonEnabledObservable()
                .subscribe(
                    ViewActions.setEnabled(findViewById(R.id.macin_activity_disconnect_button))),
            presenter
                .sendButtonEnabledObservable()
                .subscribe(ViewActions.setEnabled(findViewById(R.id.main_activity_send_button))),
            ViewObservable.clicks(findViewById(R.id.main_activity_connect_button))
                .subscribe(presenter.connectClickObserver()),
            ViewObservable.clicks(findViewById(R.id.macin_activity_disconnect_button))
                .subscribe(presenter.disconnectClickObserver()),
            ViewObservable.clicks(findViewById(R.id.main_activity_send_button))
                .subscribe(presenter.sendClickObserver()));
  }