text: /* Copyright (c) Stanford University, The Regents of the University of
   *               California, and others.
   *
   * All Rights Reserved.
   *
   * See Copyright-SimVascular.txt for additional details.
   *
   * Permission is hereby granted, free of charge, to any person obtaining
   * a copy of this software and associated documentation files (the
   * "Software"), to deal in the Software without restriction, including
   * without limitation the rights to use, copy, modify, merge, publish,
   * distribute, sublicense, and/or sell copies of the Software, and to
   * permit persons to whom the Software is furnished to do so, subject
   * to the following conditions:
   *
   * The above copyright notice and this permission notice shall be included
   * in all copies or substantial portions of the Software.
   *
   * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
   * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
   * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
   * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
   * OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
   * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
   * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
   * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
   * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
   * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
   * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
   */
  
  /*===================================================================
  
  The Medical Imaging Interaction Toolkit (MITK)
  
  Copyright (c) German Cancer Research Center,
  Division of Medical and Biological Informatics.
  All rights reserved.
  
  This software is distributed WITHOUT ANY WARRANTY; without
  even the implied warranty of MERCHANTABILITY or FITNESS FOR
  A PARTICULAR PURPOSE.
  
  See LICENSE.txt or http://www.mitk.org for details.
  
  ===================================================================*/
  #ifndef svmitkIContextMenuAction_H_
  #define svmitkIContextMenuAction_H_
  
  #include <berryMacros.h>
  #include <berryQtViewPart.h>
  
  #include <vector>
  #include <mitkDataNode.h>
  #include "mitkDataStorage.h"
  
  class QmitkStdMultiWidget;
  
  namespace svmitk
  {
    /**
    * A context menu action, which is linked to the context menu <br>
    * through an extension point. For an example check the <br>
    * <code> plugin.xml </code> and the connected classes of <br>
    * the the segmentation bundle and also the <code> sv4guiQmitkDataManagerView.cpp </code> <br>
    * in this bundle.
    */
    struct IContextMenuAction
    {
  
        /**
        * @brief Executes the action, that linked to the context menu entry.
        */
        virtual void Run( const QList<mitk::DataNode::Pointer>& selectedNodes ) = 0;
  
      // Setters
      virtual void SetDataStorage(mitk::DataStorage* dataStorage) = 0;
      virtual void SetSmoothed(bool smoothed) = 0;
      virtual void SetDecimated(bool decimated) = 0;
      virtual void SetFunctionality(berry::QtViewPart* functionality) = 0;
    };
  }
  
  Q_DECLARE_INTERFACE(svmitk::IContextMenuAction, "org.sv.datamanager.IContextMenuAction")
  
  #endif // svmitkIContextMenuAction_H_
  