/// class ProspectDirector.Web.UI.Canvas.ChartCommands
/// using ProspectDirector.Web.UI.CommandGroup

ProspectDirector.Web.UI.Canvas.FieldListCommands = ProspectDirector.Web.UI.CommandGroup.extend({

    //================================
    // CONSTRUCTOR
    //================================

    init: function (options) {

        this._super(options);

        this.addField = new ProspectDirector.Web.UI.Canvas.Charts.AddField({
            feature: this.get_feature(),
            editor: this.get_editor()
        });

        this.removeField = new ProspectDirector.Web.UI.Canvas.Charts.RemoveField({
            feature: this.get_feature(),
            editor: this.get_editor()
        });

        this.clearFields = new ProspectDirector.Web.UI.Canvas.Charts.ClearFields({
            feature: this.get_feature(),
            editor: this.get_editor()
        });

        this.moveFieldUp = new ProspectDirector.Web.UI.Canvas.Charts.OrderField({
            direction: "up",
            feature: this.get_feature(),
            editor: this.get_editor()
        });

        this.moveFieldDown = new ProspectDirector.Web.UI.Canvas.Charts.OrderField({
            direction: "down",
            feature: this.get_feature(),
            editor: this.get_editor()
        });

        this.editValueField = new ProspectDirector.Web.UI.Canvas.Charts.EditValueField({
            feature: this.get_feature(),
            editor: this.get_editor()
        });

        this.editLegendField = new ProspectDirector.Web.UI.Canvas.Charts.EditLegendField({
            feature: this.get_feature(),
            editor: this.get_editor()
        });

        this.editCategoryField = new ProspectDirector.Web.UI.Canvas.Charts.EditCategoryField({
            feature: this.get_feature(),
            editor: this.get_editor()
        });

        this.duplicateField = new ProspectDirector.Web.UI.Canvas.Charts.DuplicateField({
            feature: this.get_feature(),
            editor: this.get_editor()
        });

    },

    //================================
    // PROPERTIES
    //================================

    get_feature: function () {
        return this.get_options().feature;
    },

    get_editor: function () {
        return this.get_options().editor;
    }

});