/**
 * @license
 * Visual Blocks Editor
 *
 * Copyright 2012 Google Inc.
 * https://developers.google.com/blockly/
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

/**
 * @fileoverview Colour blocks for Blockly.
 * @author fraser@google.com (Neil Fraser)
 */
'use strict';

goog.provide('Blockly.Blocks.camera');

goog.require('Blockly.Blocks');


/**
 * Common HSV hue for all blocks in this category.
 */
Blockly.Blocks.camera.HUE = "#ff6381";

Blockly.Blocks['camera_import'] = {
  /**
   * @this Blockly.Block
   */
  init: function() {
    this.setColour(Blockly.Blocks.camera.HUE);   
    this.appendDummyInput()
        .appendField(Blockly.Msg.CAMERA_IMPORT);
    // this.setInputsInline(false);
    // this.setOutput(true);
    this.setPreviousStatement(true);
    this.setNextStatement(true);
  },
};

Blockly.Blocks['camera_use'] = {
  /**
   * @this Blockly.Block
   */
  init: function() {
    this.setColour(Blockly.Blocks.camera.HUE); 
    this.appendDummyInput()
        .appendField(Blockly.Msg.CAMERA_USE_AS)
        .appendField(new Blockly.FieldTextInput("camera"),"CAMERA")
    this.appendDummyInput()
        .appendField(Blockly.Msg.CAMERA_SENSOR_MODE)
        .appendField(new Blockly.FieldNumber('4'),"SENSOR")
    this.appendDummyInput()
        .appendField(Blockly.Msg.CAMERA_RESOLUTION)
        .appendField(new Blockly.FieldNumber('1640'),"X")
        .appendField(",")
        .appendField(new Blockly.FieldNumber('1232'),"Y")
    this.appendDummyInput()
        .appendField(Blockly.Msg.CAMERA_FRAME_RATE)
        .appendField(new Blockly.FieldNumber('20'),"FPS")
        .appendField(Blockly.Msg.CAMERA_FPS)
   this.appendStatementInput("STACK")
        .appendField(Blockly.Msg.CAMERA_DO);
    // this.setInputsInline(false);
    // this.setOutput(true);
    this.setPreviousStatement(true);
    this.setNextStatement(true);
  },
};

Blockly.Blocks['camera_enable'] = {
  /**
   * @this Blockly.Block
   */
  init: function() {
    this.setColour(Blockly.Blocks.camera.HUE);   
    this.appendDummyInput()
        .appendField(new Blockly.FieldDropdown([
          ["Enable","start"],
          ["Disable","stop"]
        ]),"MODE")
        .appendField(Blockly.Msg.CAMERA_CAMERA)
        .appendField(new Blockly.FieldTextInput("camera"),"CAMERA")
    // this.setInputsInline(false);
    // this.setOutput(true);
    this.setPreviousStatement(true);
    this.setNextStatement(true);
  },
};


Blockly.Blocks['camera_set_bounding'] = {
  /**
   * @this Blockly.Block
   */
  init: function() {
    this.setColour(Blockly.Blocks.camera.HUE);   
    this.appendDummyInput()
        .appendField(Blockly.Msg.CAMERA_SET_BOUNDING)
        .appendField(new Blockly.FieldTextInput("x"),"X")
        .appendField(new Blockly.FieldTextInput("y"),"Y")
        .appendField(new Blockly.FieldTextInput("width"),"WIDTH")
        .appendField(new Blockly.FieldTextInput("height"),"HEIGHT")
    // this.setInputsInline(false);
    // this.setOutput(true);
    this.setPreviousStatement(true);
    this.setNextStatement(true);
  },
};