Developer Documentation
MaterialPicker Class Reference
Inheritance diagram for MaterialPicker:
BaseInterface MouseInterface PickingInterface ToolboxInterface KeyInterface

Classes

struct  MaterialInfo
 

Public Slots

void slotMouseEvent (QMouseEvent *_event)
 
void slotPickModeChanged (const std::string &_mode)
 
void slotKeyEvent (QKeyEvent *_event)
 
QString version ()
 

Signals

void addPickMode (const std::string &_mode)
 
void updateView ()
 
void addToolbox (QString _name, QWidget *_widget, QIcon *_icon)
 
void registerKey (int _key, Qt::KeyboardModifiers _modifiers, QString _description, bool _multiUse=false)
 
- Signals inherited from BaseInterface
virtual void updateView ()
 Update current view in Main Application. More...
 
virtual void setSlotDescription (QString _slotName, QString _slotDescription, QStringList _parameters, QStringList _descriptions)
 Set a description for a public slot. More...
 
virtual void setRenderer (unsigned int _viewer, QString _rendererName)
 Set a renderer for the given viewer. More...
 
- Signals inherited from PickingInterface
virtual void addPickMode (const std::string &_mode)
 Add a new picking mode to the examiner. More...
 
- Signals inherited from ToolboxInterface
virtual void addToolbox (QString _name, QWidget *_widget)
 Add a toolbox widget to the gui with the given name. More...
 
- Signals inherited from KeyInterface
virtual void registerKey (int _key, Qt::KeyboardModifiers _modifiers, QString _description, bool _multiUse=false)
 Register a key-combination for your plugin. More...
 

Public Member Functions

QString name ()
 Return a name for the plugin. More...
 
QString description ()
 Return a description of what the plugin is doing. More...
 

Private Slots

void initializePlugin ()
 
void pluginsInitialized ()
 
void slotPickMaterialMode ()
 
void slotFillMaterialMode ()
 
void slotRemoveCurrentItem ()
 
void editMode (QListWidgetItem *_item)
 items can be renamed by double clicking them More...
 
void editModeCurrent ()
 
void saveNewName (QWidget *_editor, QAbstractItemDelegate::EndEditHint _hint)
 saves the new material name with hotkey hint More...
 
void saveNewName (QListWidgetItem *_item)
 
QString materialString (const MaterialInfo &_mat, const QString &_name)
 returns a formatted string for saving More...
 
void clearList ()
 
void removeItem (QListWidgetItem *_item)
 
void createContextMenu (const QPoint &_point)
 creates context menu on current item (current is the item at mouse position) More...
 
void changeHotKey (const int _key)
 change specified HotKey to current item More...
 
void slotMaterialProperties ()
 
void slotEnableListWidget (int _save)
 
void slotMaterialChanged ()
 
- Private Slots inherited from BaseInterface
virtual void exit ()
 
virtual QString version ()
 Return a version string for your plugin. More...
 
- Private Slots inherited from KeyInterface
virtual void slotKeyEvent (QKeyEvent *_event)
 Key Event from Main App. More...
 

Private Member Functions

QString itemName (const QString &_name, int _key)
 returns the item name with hotkey hint More...
 
QString plainName (const QString &string, int index)
 returns the plain name of the material without hotkey hint More...
 
- Private Member Functions inherited from BaseInterface
virtual void noguiSupported ()
 
virtual ~BaseInterface ()
 Destructor. More...
 
virtual void blockScenegraphUpdates (bool _block)
 Tell the core to prevent scenegraph updates. More...
 
virtual void updatedObject (int _objectId)
 An object has been changed or added by this plugin. More...
 
virtual void updatedObject (int _identifier, const UpdateType &_type)
 An object has been changed or added by this plugin. More...
 
virtual void nodeVisibilityChanged (int _identifier)
 A scenegraph node has been shown or hidden. More...
 
virtual void getCurrentRenderer (unsigned int _viewer, QString &_rendererName)
 Get the current renderer for the given viewer. More...
 
- Private Member Functions inherited from MouseInterface
virtual ~MouseInterface ()
 Destructor. More...
 
- Private Member Functions inherited from PickingInterface
virtual void addHiddenPickMode (const std::string &_mode)
 Add a new picking mode to the examiner which will be invisible. More...
 
virtual void setPickModeCursor (const std::string &_mode, QCursor _cursor)
 Set the cursor of the given PickMode. More...
 
virtual void setPickModeMouseTracking (const std::string &_mode, bool _mouseTracking)
 Set mouse tracking for the given PickMode. More...
 
virtual void setPickModeToolbar (const std::string &_mode, QToolBar *_toolbar)
 Set the additional toolbar of the given PickMode. More...
 
virtual void removePickModeToolbar (const std::string &_mode)
 Removes the additional toolbar of the given PickMode. More...
 
virtual ~PickingInterface ()
 Destructor. More...
 
- Private Member Functions inherited from ToolboxInterface
virtual ~ToolboxInterface ()
 Destructor. More...
 
virtual void addToolbox (QString _name, QWidget *_widget, QIcon *_icon)
 Add a toolbox widget to the gui with the given name and an icon. More...
 
virtual void addToolbox (QString _name, QWidget *_widget, QIcon *_icon, QWidget *_headerAreaWidget)
 Add a toolbox widget to the gui with the given name, icon and header area widget. More...
 
- Private Member Functions inherited from KeyInterface
virtual void slotKeyReleaseEvent (QKeyEvent *_event)
 Key Release Event from Main App. More...
 
virtual ~KeyInterface ()
 Destructor. More...
 

Private Attributes

const std::string pickModeName_
 
const QString propName_
 
QPushButton * pickMaterialButton_
 
QPushButton * fillMaterialButton_
 
QListWidget * materialListWidget_
 
QIcon * toolIcon_
 
QVector< MaterialInfomaterialList_
 
QStringList materialStrings_
 
std::map< int, size_t > shortKeyRow_
 
ptr::shared_ptr< MaterialNodematerialNode_
 
bool pickMaterial_
 stores the state of the pick material button More...
 
bool fillMaterial_
 stores the state of the fill material button More...
 

Static Private Attributes

static const unsigned supportedKeys_ = 3
 

Detailed Description

Definition at line 62 of file MaterialPicker.hh.

Constructor & Destructor Documentation

◆ MaterialPicker()

MaterialPicker::MaterialPicker ( )

Definition at line 58 of file MaterialPicker.cc.

◆ ~MaterialPicker()

MaterialPicker::~MaterialPicker ( )

Definition at line 77 of file MaterialPicker.cc.

Member Function Documentation

◆ changeHotKey

void MaterialPicker::changeHotKey ( const int  _key)
privateslot

change specified HotKey to current item

Definition at line 430 of file MaterialPicker.cc.

◆ clearList

void MaterialPicker::clearList ( )
privateslot

Definition at line 208 of file MaterialPicker.cc.

◆ createContextMenu

void MaterialPicker::createContextMenu ( const QPoint &  _point)
privateslot

creates context menu on current item (current is the item at mouse position)

Definition at line 536 of file MaterialPicker.cc.

◆ description()

QString MaterialPicker::description ( )
inlinevirtual

Return a description of what the plugin is doing.

This function has to return a basic description of the plugin

Implements BaseInterface.

Definition at line 96 of file MaterialPicker.hh.

◆ editMode

void MaterialPicker::editMode ( QListWidgetItem *  _item)
privateslot

items can be renamed by double clicking them

Definition at line 355 of file MaterialPicker.cc.

◆ editModeCurrent

void MaterialPicker::editModeCurrent ( )
privateslot

Definition at line 349 of file MaterialPicker.cc.

◆ initializePlugin

void MaterialPicker::initializePlugin ( )
privateslot

Definition at line 84 of file MaterialPicker.cc.

◆ itemName()

QString MaterialPicker::itemName ( const QString &  _name,
int  _key 
)
private

returns the item name with hotkey hint

Definition at line 399 of file MaterialPicker.cc.

◆ materialString

QString MaterialPicker::materialString ( const MaterialInfo _mat,
const QString &  _name 
)
privateslot

returns a formatted string for saving

Definition at line 457 of file MaterialPicker.cc.

◆ name()

QString MaterialPicker::name ( )
inlinevirtual

Return a name for the plugin.

This Function has to return the name of the plugin.

Implements BaseInterface.

Definition at line 95 of file MaterialPicker.hh.

◆ plainName()

QString MaterialPicker::plainName ( const QString &  string,
int  index 
)
private

returns the plain name of the material without hotkey hint

Definition at line 367 of file MaterialPicker.cc.

◆ pluginsInitialized

void MaterialPicker::pluginsInitialized ( )
privateslot

Definition at line 261 of file MaterialPicker.cc.

◆ removeItem

void MaterialPicker::removeItem ( QListWidgetItem *  _item)
privateslot

Definition at line 180 of file MaterialPicker.cc.

◆ saveNewName [1/2]

void MaterialPicker::saveNewName ( QListWidgetItem *  _item)
privateslot

Definition at line 376 of file MaterialPicker.cc.

◆ saveNewName [2/2]

void MaterialPicker::saveNewName ( QWidget *  _editor,
QAbstractItemDelegate::EndEditHint  _hint 
)
privateslot

saves the new material name with hotkey hint

Definition at line 362 of file MaterialPicker.cc.

◆ slotEnableListWidget

void MaterialPicker::slotEnableListWidget ( int  _save)
privateslot

Definition at line 528 of file MaterialPicker.cc.

◆ slotFillMaterialMode

void MaterialPicker::slotFillMaterialMode ( )
privateslot

Definition at line 249 of file MaterialPicker.cc.

◆ slotKeyEvent

void MaterialPicker::slotKeyEvent ( QKeyEvent *  _event)
slot

Definition at line 415 of file MaterialPicker.cc.

◆ slotMaterialChanged

void MaterialPicker::slotMaterialChanged ( )
privateslot

Definition at line 504 of file MaterialPicker.cc.

◆ slotMaterialProperties

void MaterialPicker::slotMaterialProperties ( )
privateslot

Definition at line 473 of file MaterialPicker.cc.

◆ slotMouseEvent

void MaterialPicker::slotMouseEvent ( QMouseEvent *  _event)
slot

Definition at line 269 of file MaterialPicker.cc.

◆ slotPickMaterialMode

void MaterialPicker::slotPickMaterialMode ( )
privateslot

Definition at line 237 of file MaterialPicker.cc.

◆ slotPickModeChanged

void MaterialPicker::slotPickModeChanged ( const std::string &  _mode)
slot

Definition at line 409 of file MaterialPicker.cc.

◆ slotRemoveCurrentItem

void MaterialPicker::slotRemoveCurrentItem ( )
privateslot

Definition at line 220 of file MaterialPicker.cc.

◆ version

QString MaterialPicker::version ( )
inlineslot

Definition at line 185 of file MaterialPicker.hh.

Member Data Documentation

◆ fillMaterial_

bool MaterialPicker::fillMaterial_
private

stores the state of the fill material button

Definition at line 135 of file MaterialPicker.hh.

◆ fillMaterialButton_

QPushButton* MaterialPicker::fillMaterialButton_
private

Definition at line 117 of file MaterialPicker.hh.

◆ materialList_

QVector<MaterialInfo> MaterialPicker::materialList_
private

Definition at line 124 of file MaterialPicker.hh.

◆ materialListWidget_

QListWidget* MaterialPicker::materialListWidget_
private

Definition at line 120 of file MaterialPicker.hh.

◆ materialNode_

ptr::shared_ptr<MaterialNode> MaterialPicker::materialNode_
private

Definition at line 130 of file MaterialPicker.hh.

◆ materialStrings_

QStringList MaterialPicker::materialStrings_
private

Definition at line 125 of file MaterialPicker.hh.

◆ pickMaterial_

bool MaterialPicker::pickMaterial_
private

stores the state of the pick material button

Definition at line 133 of file MaterialPicker.hh.

◆ pickMaterialButton_

QPushButton* MaterialPicker::pickMaterialButton_
private

Definition at line 116 of file MaterialPicker.hh.

◆ pickModeName_

const std::string MaterialPicker::pickModeName_
private

Definition at line 112 of file MaterialPicker.hh.

◆ propName_

const QString MaterialPicker::propName_
private

Definition at line 113 of file MaterialPicker.hh.

◆ shortKeyRow_

std::map<int,size_t> MaterialPicker::shortKeyRow_
private

Definition at line 128 of file MaterialPicker.hh.

◆ supportedKeys_

const unsigned MaterialPicker::supportedKeys_ = 3
staticprivate

Definition at line 114 of file MaterialPicker.hh.

◆ toolIcon_

QIcon* MaterialPicker::toolIcon_
private

Definition at line 122 of file MaterialPicker.hh.


The documentation for this class was generated from the following files: