/* -----------------------------------------------------------------------------

slide.js uses:
  inheritance.js
  context.js

  
------------------------------------------------------------------------------- */

var SlideController = Class.extend( Slide, {

  initialize: function ( slideId ) {

     this.parent( slideId );
     this.slideContent = $("div", $("#" + slideId));

  },

  play: function () {

    this.slideContent.effect("bounce", { easing: "easeOutCubic", times: 2 }, 500); 

  },

  stop: function () {

    //if ( console ) {
    //  console.log(this.slideId + " is end");
    //}

  }
  

});

var QuestionController = Class.extend( SlideController, {

  initialize: function ( slideId ) {

     this.parent( slideId );
     this.solutionState = false;
     this.guessState = false;

  },

  toggleSolution: function () {

    if ( this.solutionState ) {

      this.hideSolution() ;

    }
    else {

      this.showSolution() ;

    }

  },

  showSolution: function () {

    alert(this.slideId + ": solution を表示します。 ");
    this.solutionState = true;

  },

  hideSolution: function () {

    alert(this.slideId + ": solution を非表示にします。 ");
    this.solutionState = false;

  },

  toggleGuess: function () {

    if ( this.guessState ) {

      this.uncheckGuess();

    }
    else {

      this.checkGuess();

    }

  },

  checkGuess: function () {

    alert(this.slideId + ": この問題をGuess扱いにします。 ");
    this.guessState = true;


  },

  uncheckGuess: function () {

    alert(this.slideId + ": この問題のGuess扱いをやめます。 ");
    this.guessState = false;

  }

});


