SamplerUI Class Reference

#include <MapExtractorInterface.h>

Class Description

This class represents the user interface which belongs to a sampler in map extraction.

By design, there are no other UI elements on the map extraction dialog other than the sampler panel. This means that common widgets which belongs to all the samplers (for example layout related widgets, texture size) must be included in all the sampler panels. There are functions in this class which makes it very easy for the sampler to create these widgets, so that their look is preserved between the different samplers. This also gives a chance for the samplers to customize these widgets, for example if a sampler doesn't need the level for the target meshes, it can get a widget which hides the level of the target meshes. When the user opens the properties window for a map extractor node, the UserInterface is called in all the samplers. Those functions must create a new instance of a class inherited from SamplerUI, which will then used to communicate with the user. Only one of these panels are shown at a time, the others are hiden. When the user switches samplers, the previous panel is hidden, and another one is shown.

Definition at line 258 of file MapExtractorInterface.h.

+ Inheritance diagram for SamplerUI:

Public Member Functions

virtual void Initialize (void)
 
virtual QWidgetRootWidget (void)
 
virtual void UpdateValues (void)
 
QLabelSmallerLabel (const QString &text)
 
MapExtractorExtractor (void) const
 
- Public Member Functions inherited from QObject
Q_INVOKABLE QObject (QObject *parent=0)
 
virtual ~QObject ()
 
virtual bool event (QEvent *)
 
virtual bool eventFilter (QObject *, QEvent *)
 
QString objectName () const
 
void setObjectName (const QString &name)
 
bool isWidgetType () const
 
bool signalsBlocked () const
 
bool blockSignals (bool b)
 
QThreadthread () const
 
void moveToThread (QThread *thread)
 
int startTimer (int interval)
 
void killTimer (int id)
 
template<typename T >
findChild (const QString &aName=QString()) const
 
template<typename T >
QList< T > findChildren (const QString &aName=QString()) const
 
template<typename T >
QList< T > findChildren (const QRegExp &re) const
 
const QObjectListchildren () const
 
void setParent (QObject *)
 
void installEventFilter (QObject *)
 
void removeEventFilter (QObject *)
 
bool connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=0, const QObject *receiver=0, const char *member=0)
 
bool disconnect (const QObject *receiver, const char *member=0)
 
void dumpObjectTree ()
 
void dumpObjectInfo ()
 
bool setProperty (const char *name, const QVariant &value)
 
QVariant property (const char *name) const
 
QList< QByteArraydynamicPropertyNames () const
 
void setUserData (uint id, QObjectUserData *data)
 
QObjectUserDatauserData (uint id) const
 
QObjectparent () const
 
bool inherits (const char *classname) const
 
- Public Member Functions inherited from Node
 Node (const QString &sStringID="", const QString &sDisplayName="")
 Standard constructor. More...
 
virtual ~Node (void)
 
void LoadTemplate (const QString &sFileName="", bool bStartEvent=false)
 Use an external XML file to initialize the attributes. More...
 
void SaveTemplate (const QString &sFileName="", bool bSaveOnlyVisible=false)
 Save current attributes as an XML template. More...
 
unsigned int Version (void) const
 Returns the current version of the node. This number increases when the content of the node changed (when ContentChanged() called). More...
 
void SetVersion (unsigned int iVersion)
 Sets the current version number for the node. More...
 
unsigned int ReferenceCount (void) const
 Returns the number of pointers referencing this node. More...
 
AttributeReferencePointer (unsigned int iIndex) const
 Returns the address of an attribute which refers to this node. The type of the attribute is always aptr. More...
 
NodeReferenceNode (unsigned int iIndex) const
 Returns the address of a node referencing this node. More...
 
virtual QString Name (const ClassDesc *pClass=0) const
 Deprecated. More...
 
virtual void SetName (const QString &sName)
 Deprecated. More...
 
virtual QString StringID (const ClassDesc *pClass=0) const
 Returns the string id of the node. More...
 
virtual void SetStringID (const QString &sStringID)
 Sets the string id of the node. More...
 
virtual QString DisplayName (void) const
 Returns the display name of the node. More...
 
virtual void SetDisplayName (const QString &sDisplayName)
 Sets the display name of the node. More...
 
virtual QString HelpID (void) const
 Returns the help entry id of the node. Can be overwritten in derived classes. More...
 
virtual void SetHelpID (const QString &sHelpID)
 Sets the help entry id of the node. More...
 
void Annex (Node *pSource, const QString &sCategory="")
 Relink all the attributes of the source node to this one. More...
 
virtual void Serialize (Stream &s)
 Serializes the node. More...
 
bool IsKindOf (const ClassDesc *pClass) const
 Returns true if this node is derived from the pClass class. More...
 
void ContentChanged (void) const
 This function must be called if the content of the node is changed. More...
 
virtual void CheckValidity (DiagnosticLevel iLevel=dgnLevel2) const
 Checks the validity of this node. More...
 
virtual void CopyTo (Node *pNode) const
 
virtual NodeDuplicate (void) const
 
virtual void OnNodeEvent (const Attribute &cAttribute, NodeEventType cType)
 This function is called if an event occurs with any of the attributes of the node. More...
 
virtual void OnEvent (const EventGate &cEvent)
 This function is called when a generic event occurs. See EventGate class. More...
 
void RequestDeferredEvent (Attribute &cAttribute)
 Request for a deferred event, which will occur only in the main loop. More...
 
unsigned int AttributeCount (void) const
 Returns the number of attributes owned by the node. More...
 
AttributeAttributeByIndex (int iIndex) const
 Returns a specified attribute (or 0 if iIndex is greater than the number of attributes). More...
 
AttributeAttributeByName (const QString &sName) const
 Returns a specified attribute by its name. Returns 0 if the attribute not found. More...
 
AttributeAttributeByID (const QString &sID) const
 Returns a specified attribute by its ID. Returns 0 if the attribute not found. More...
 
void SetAttributeValue (const QString &sAttributeID, const QString &sNewValue)
 Set the value of an attribute from a string. More...
 
QString AttributeValue (const QString &sAttributeID) const
 Returns the current value of an attribute as a string. More...
 
void LogAttributes (void) const
 Write all attributes into the log file. More...
 
virtual QWidgetCreatePropertiesWindow (QWidget *pParent)
 Create a window which displays the attributes of the node. Can be overriden to provide a custom interface. More...
 
AttributeAddAttribute (Attribute::AttributeType type, const QString &id)
 Allows SDK users to add attributes at runtime. More...
 
NodeNext (void) const
 Returns the next node in the chain. Used to enumerate the current nodes. See also First(). More...
 
int ID (void) const
 Returns an ID for the node. The ID is unique in the whole application life. More...
 
bool SetID (int iID)
 Set ID for the node. More...
 

Public Attributes

Mapperm_pMapper
 
TextureExtractionDialog * m_pDialog
 
bool m_bValidData
 
bool m_bDefaultTargetToLowestLevel
 
class Samplerm_pTarget
 
- Public Attributes inherited from Node
AttributeThisPointer m_pThis
 
 DECLARE_CLASS
 

Protected Member Functions

 SamplerUI (class Sampler *pTarget)
 
QWidgetCreateTargetWidget (bool bSmoothing=true, bool bUVSmoothing=true, bool bDefaultToLowest=true, bool bShowLevels=true)
 This function creates a widget which represents the list of the target meshes, including the smoothing checboxes. More...
 
QWidgetCreateSourceWidget (bool bSmoothing=true)
 This function creates a widget which is used for the source mesh list, including the checkbox for smooth surface. More...
 
QWidgetCreateLocatorWidget (void)
 This function creates the widget which contains the parameters of the current locator node. More...
 
QWidgetCreateLayoutWidget (void)
 This function creates the widget which contains the parameters of the current locator node. More...
 
QWidgetCreateOutputWidget (void)
 This function creates a widget where the user can set output related settings, like filename and extension (the extension controls the type of the utilizers, so when the user chooses a different extension, the utilizer and layout object might be recreated) More...
 
- Protected Member Functions inherited from QObject
QObjectsender () const
 
int senderSignalIndex () const
 
int receivers (const char *signal) const
 
virtual void timerEvent (QTimerEvent *)
 
virtual void childEvent (QChildEvent *)
 
virtual void customEvent (QEvent *)
 
virtual void connectNotify (const char *signal)
 
virtual void disconnectNotify (const char *signal)
 
 QObject (QObjectPrivate &dd, QObject *parent=0)
 

Protected Attributes

QLabelm_pLocateSign
 
QWidgetm_pRoot
 
- Protected Attributes inherited from QObject
QScopedPointer< QObjectDatad_ptr
 

Friends

class Sampler
 
class Mapper
 

Additional Inherited Members

- Public Types inherited from Node
enum  DiagnosticLevel { dgnLevel1, dgnLevel2, dgnLevel3 }
 Indicates the level of validity checking that is performed in CheckValidity() More...
 
- Public Slots inherited from QObject
void deleteLater ()
 
- Signals inherited from QObject
void destroyed (QObject *=0)
 
- Static Public Member Functions inherited from QObject
static bool connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 
static bool connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static uint registerUserData ()
 
- Static Public Member Functions inherited from Node
static void StartHashing ()
 This is called once in main once static ctors are done. More...
 
static NodeFirst (void)
 This function will return the first node in the memory. Used to enumerate all the current nodes. See also Next(). More...
 
static NodeByID (int iID)
 Returns the node with the specified ID, or zero if such a node does not exists. More...
 
static NodeByName (const QString &sClass, const QString &sName)
 Search for a node with the name sName. More...
 
- Static Protected Attributes inherited from QObject
static const QMetaObject staticQtMetaObject
 
- Properties inherited from QObject
QString objectName
 

Constructor & Destructor Documentation

SamplerUI ( class Sampler pTarget)
protected

Member Function Documentation

QWidget* CreateTargetWidget ( bool  bSmoothing = true,
bool  bUVSmoothing = true,
bool  bDefaultToLowest = true,
bool  bShowLevels = true 
)
protected

This function creates a widget which represents the list of the target meshes, including the smoothing checboxes.

Parameters
[in]bSmoothingif true, the smoothing checkbox will be visible.
[in]bUVSmoothingif true, the texture coordinate smoothing checkbox will be visible.
[in]bDefaultToLowestif true, and the user adds a new mesh as the target, the lowest level of that mesh will be used by default.
[in]bShowLevelsif true, the level column will be visible to the user, letting them choose the subdivision level.
QWidget* CreateSourceWidget ( bool  bSmoothing = true)
protected

This function creates a widget which is used for the source mesh list, including the checkbox for smooth surface.

Parameters
[in]bSmoothingif true, the smoothing checkbox will be visible.
QWidget* CreateLocatorWidget ( void  )
protected

This function creates the widget which contains the parameters of the current locator node.

The look of this widget depends on the type of the locator.

QWidget* CreateLayoutWidget ( void  )
protected

This function creates the widget which contains the parameters of the current locator node.

The look of this widget depends on the type of the locator. For example for traditional texture map extraction this widget is where the user can alter the size of the extracted texture.

QWidget* CreateOutputWidget ( void  )
protected

This function creates a widget where the user can set output related settings, like filename and extension (the extension controls the type of the utilizers, so when the user chooses a different extension, the utilizer and layout object might be recreated)

virtual void Initialize ( void  )
virtual

Reimplemented from Node.

virtual QWidget* RootWidget ( void  )
virtual
virtual void UpdateValues ( void  )
virtual
QLabel* SmallerLabel ( const QString text)
MapExtractor* Extractor ( void  ) const

Friends And Related Function Documentation

friend class Sampler
friend

Definition at line 317 of file MapExtractorInterface.h.

friend class Mapper
friend

Definition at line 318 of file MapExtractorInterface.h.

Member Data Documentation

Mapper* m_pMapper

Definition at line 285 of file MapExtractorInterface.h.

TextureExtractionDialog* m_pDialog

Definition at line 291 of file MapExtractorInterface.h.

bool m_bValidData

Definition at line 292 of file MapExtractorInterface.h.

bool m_bDefaultTargetToLowestLevel

Definition at line 293 of file MapExtractorInterface.h.

class Sampler* m_pTarget

Definition at line 294 of file MapExtractorInterface.h.

QLabel* m_pLocateSign
protected

Definition at line 313 of file MapExtractorInterface.h.

QWidget* m_pRoot
protected

Definition at line 314 of file MapExtractorInterface.h.


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