Android Open Source - Save-the-Planet View






From Project

Back to project page Save-the-Planet.

License

The source code is released under:

Copyright (c) 2002 JSON.org Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software ...

If you think the Android project Save-the-Planet listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.karolmajta.stp.views;
//from   w  ww .java 2 s  . c o m
import com.karolmajta.stp.exception.UnboundViewException;

import processing.core.PApplet;

/**
 * Abstract class for creating specialized views for concrete models.
 * Makes given Model instance accessible via protected model field.
 * 
 * @author Karol
 *
 * @param <Model> Model this View will draw
 */
public abstract class View<Model> implements IDrawable<Model> {
  private boolean visible;
  
  protected Model model;
  
  public View() {
    this.visible = true;
  }
  
  @Override
  public final void bindModel(Model model) {
    this.model = model;
  }

  @Override
  public final void draw(PApplet p) throws UnboundViewException {
    if(model == null) {
      throw new UnboundViewException();
    }
    if(visible){
      onDraw(p);
    }
  }
  
  @Override
  public final void setVisible(boolean flag) {
    visible = flag;
  }
  
  @Override
  public final boolean isVisible() {
    return visible;
  }
  
  /**
   * Protected field model referencing object bound with
   * {@link View#bindModel(Object)} can be used inside this method.
   * @param p
   */
  protected abstract void onDraw(PApplet p);
}




Java Source Code List

com.karolmajta.procprox.DragDetector.java
com.karolmajta.procprox.Drag.java
com.karolmajta.procprox.FontManager.java
com.karolmajta.procprox.IEventFilter.java
com.karolmajta.procprox.TapDetector.java
com.karolmajta.procprox.Tap.java
com.karolmajta.procprox.excepiton.FontNotCreatedException.java
com.karolmajta.stp.LoadingScreenActivity.java
com.karolmajta.stp.MainMenuActivity.java
com.karolmajta.stp.exception.NoDeferredException.java
com.karolmajta.stp.exception.NoTasksInProgressQueueException.java
com.karolmajta.stp.exception.STPException.java
com.karolmajta.stp.exception.UnboundViewException.java
com.karolmajta.stp.models.ICanCollide.java
com.karolmajta.stp.models.IPConstants.java
com.karolmajta.stp.models.IProgress.java
com.karolmajta.stp.models.ITask.java
com.karolmajta.stp.models.ITickable.java
com.karolmajta.stp.models.MainMenuItemBall.java
com.karolmajta.stp.models.MainMenuObstacleBall.java
com.karolmajta.stp.models.ObstacleManager.java
com.karolmajta.stp.models.SyncProgress.java
com.karolmajta.stp.models.SyncTask.java
com.karolmajta.stp.models.Tickable.java
com.karolmajta.stp.models.Viewport.java
com.karolmajta.stp.views.FancyTextView.java
com.karolmajta.stp.views.IDrawable.java
com.karolmajta.stp.views.MainMenuItemBallDebugView.java
com.karolmajta.stp.views.MainMenuItemBallView.java
com.karolmajta.stp.views.MainMenuObstacleBallDebugView.java
com.karolmajta.stp.views.MainMenuObstacleBallView.java
com.karolmajta.stp.views.ObstacleManagerView.java
com.karolmajta.stp.views.ProgressDebugView.java
com.karolmajta.stp.views.ProgressView.java
com.karolmajta.stp.views.View.java