1 /**************************************************************************** 2 * MeshLab o o * 3 * A versatile mesh processing toolbox o o * 4 * _ O _ * 5 * Copyright(C) 2005-2008 \/)\/ * 6 * Visual Computing Lab /\/| * 7 * ISTI - Italian National Research Council | * 8 * \ * 9 * All rights reserved. * 10 * * 11 * This program is free software; you can redistribute it and/or modify * 12 * it under the terms of the GNU General Public License as published by * 13 * the Free Software Foundation; either version 2 of the License, or * 14 * (at your option) any later version. * 15 * * 16 * This program is distributed in the hope that it will be useful, * 17 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * 19 * GNU General Public License (http://www.gnu.org/licenses/gpl.txt) * 20 * for more details. * 21 * * 22 ****************************************************************************/ 23 24 25 #ifndef EditSliceFactoryPLUGIN_H 26 #define EditSliceFactoryPLUGIN_H 27 28 #include <common/interfaces.h> 29 30 class EditSliceFactory : public QObject, public MeshEditInterfaceFactory 31 { 32 Q_OBJECT 33 MESHLAB_PLUGIN_IID_EXPORTER(MESH_EDIT_INTERFACE_FACTORY_IID) 34 Q_INTERFACES(MeshEditInterfaceFactory) 35 36 public: 37 EditSliceFactory(); ~EditSliceFactory()38 virtual ~EditSliceFactory() { delete editSlice; } 39 40 //gets a list of actions available from this plugin 41 virtual QList<QAction *> actions() const; 42 43 //get the edit tool for the given action 44 virtual MeshEditInterface* getMeshEditInterface(QAction *); 45 46 //get the description for the given action 47 virtual QString getEditToolDescription(QAction *); 48 49 private: 50 QList <QAction *> actionList; 51 52 QAction *editSlice; 53 }; 54 55 #endif 56