/**************************************************************************** Copyright (C) 2010-2012 the Office National des ForĂȘts (ONF), France All rights reserved. Contact : alexandre.piboule@onf.fr Developers : Alexandre PIBOULE (ONF) This file is part of PluginONF library. PluginONF is free library: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. PluginONF is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with PluginONF. If not, see . *****************************************************************************/ #ifndef ONF_ACTIONSEGMENTGAPSOPTIONS_H #define ONF_ACTIONSEGMENTGAPSOPTIONS_H #include "ct_view/actions/abstract/ct_gabstractactionoptions.h" class ONF_ActionSegmentGaps; namespace Ui { class ONF_ActionSegmentGapsOptions; } class ONF_ActionSegmentGapsOptions : public CT_GAbstractActionOptions { Q_OBJECT public: enum Mode { CHOOSECLUSTER, DRAWLIMITS, FILLAREA, FREEMOVE, CHANGECENTERCELL }; enum DrawingGrid { DENSITY, HEIGHT, CLUSTERS }; explicit ONF_ActionSegmentGapsOptions(const ONF_ActionSegmentGaps *action, float initZvalue); ~ONF_ActionSegmentGapsOptions(); float getHeight(); int getActiveCluster(); bool getShowClustersOnly(); double getHSingleStep(); int getPencilSize(); bool redForSelection(); bool isFillModeFull(); Mode getMode(); DrawingGrid getDrawingGrid(); private: Ui::ONF_ActionSegmentGapsOptions *ui; Mode _mode; DrawingGrid _drawingGrid; public slots: void setHeight(float h); void setActiveCluster(int cluster); void setClusterNumber(int nb); void setMode(Mode mode); void setDrawingGrid(DrawingGrid drawingGrid); void increaseHValue(); void decreaseHValue(); void increasePencilSizeValue(); void decreasePencilSizeValue(); void setActiveClusterColor(const QColor* color); void setUndoRedo(bool undo, bool redo); signals: void parametersChanged(); void activeClusterChanged(); void askForClusterCreation(); void undo(); void redo(); void askForMerging(int pixelNumber); private slots: void on_pb_pickup_clicked(); void on_pb_addCluster_clicked(); void on_pb_drawLimit_clicked(); void on_pb_fill_clicked(); void on_pb_freemove_clicked(); void on_pb_centerOnCell_clicked(); void on_rb_clusters_clicked(); void on_rb_mns_clicked(); void on_rb_density_clicked(); void on_sb_activeCluster_valueChanged(int arg1); void on_dsb_height_valueChanged(double arg1); void on_pb_showClusters_clicked(); void on_sb_pencilSize_valueChanged(int arg1); void on_pb_activeClusterColor_toggled(bool checked); void changeSingleStep(int button); void on_pb_merge_clicked(); }; #endif // ONF_ACTIONSEGMENTGAPSOPTIONS_H