VSTGUI  4.4
Graphical User Interface Framework not only for VST plugins
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
CNewFileSelector Class Referenceabstract

New file selector class. More...

+ Inheritance diagram for CNewFileSelector:

Public Types

enum  Style { kSelectFile, kSelectSaveFile, kSelectDirectory }
 

Public Member Functions

virtual bool isTypeOf (IdStringPtr s) const
 
virtual CBaseObjectnewCopy () const
 
CFileSelector setup
void setTitle (UTF8StringPtr title)
 set title of file selector More...
 
void setInitialDirectory (UTF8StringPtr path)
 set initial directory (UTF8 string) More...
 
void setDefaultSaveName (UTF8StringPtr name)
 set initial save name (UTF8 string) More...
 
void setDefaultExtension (const CFileExtension &extension)
 set default file extension More...
 
void setAllowMultiFileSelection (bool state)
 set allow multi file selection (only valid for kSelectFile selector style) More...
 
void addFileExtension (const CFileExtension &extension)
 add a file extension More...
 
CFileSelector result
uint32_t getNumSelectedFiles () const
 get number of selected files More...
 
UTF8StringPtr getSelectedFile (uint32_t index) const
 get selected file. Result is only valid as long as the instance of CNewFileSelector is valid. More...
 
- Public Member Functions inherited from CBaseObject
 CBaseObject ()
 
virtual ~CBaseObject ()
 
virtual void beforeDelete ()
 
virtual void forget ()
 decrease refcount and delete object if refcount == 0 More...
 
virtual void remember ()
 increase refcount More...
 
virtual int32_t getNbReference () const
 get refcount More...
 
virtual CMessageResult notify (CBaseObject *sender, IdStringPtr message)
 

Static Public Member Functions

static const CFileExtensiongetAllFilesExtension ()
 get the all files extension More...
 

Static Public Attributes

static IdStringPtr kSelectEndMessage = "CNewFileSelector Select End Message"
 

Protected Types

typedef std::list< CFileExtensionFileExtensionList
 

Protected Member Functions

 CNewFileSelector (CFrame *frame=0)
 
 ~CNewFileSelector ()
 
virtual bool runInternal (CBaseObject *delegate)=0
 
virtual void cancelInternal ()=0
 
virtual bool runModalInternal ()=0
 

Protected Attributes

CFrameframe
 
UTF8StringBuffer title
 
UTF8StringBuffer initialPath
 
UTF8StringBuffer defaultSaveName
 
const CFileExtensiondefaultExtension
 
bool allowMultiFileSelection
 
FileExtensionList extensions
 
std::vector< UTF8StringBufferresult
 

CFileSelector running

static CNewFileSelectorcreate (CFrame *parent=0, Style style=kSelectFile)
 create a new instance More...
 
bool run (CBaseObject *delegate)
 the delegate will get a kSelectEndMessage throu the notify method where the sender is this CNewFileSelector object More...
 
void cancel ()
 cancel running the file selector More...
 
bool runModal ()
 run as modal dialog More...
 

Detailed Description

New file selector class.

Usage

Running the file selector

void MyClass::runFileSelector ()
{
if (selector)
{
selector->addFileExtension (CFileExtension ("AIFF", "aif", "audio/aiff"));
selector->setDefaultExtension (CFileExtension ("WAVE", "wav"));
selector->setTitle("Choose An Audio File");
selector->run (this);
selector->forget ();
}
}

Getting results

CMessageResult MyClass::notify (CBaseObject* sender, IdStringPtr message)
{
{
CNewFileSelector* sel = dynamic_cast<CNewFileSelector*>(sender);
if (sel)
{
// do anything with the selected files here
}
}
return parent::notify (sender, message);
}

Member Typedef Documentation

typedef std::list<CFileExtension> FileExtensionList
protected

Member Enumeration Documentation

enum Style
Enumerator
kSelectFile 

select file(s) selector style

kSelectSaveFile 

select save file selector style

kSelectDirectory 

select directory style

Constructor & Destructor Documentation

CNewFileSelector ( CFrame frame = 0)
protected
~CNewFileSelector ( )
protected

Member Function Documentation

void addFileExtension ( const CFileExtension extension)

add a file extension

void cancel ( )

cancel running the file selector

virtual void cancelInternal ( )
protectedpure virtual
static CNewFileSelector* create ( CFrame parent = 0,
Style  style = kSelectFile 
)
static

create a new instance

const CFileExtension & getAllFilesExtension ( )
static

get the all files extension

uint32_t getNumSelectedFiles ( ) const

get number of selected files

UTF8StringPtr getSelectedFile ( uint32_t  index) const

get selected file. Result is only valid as long as the instance of CNewFileSelector is valid.

virtual bool isTypeOf ( IdStringPtr  s) const
inlinevirtual
virtual CBaseObject* newCopy ( ) const
inlinevirtual
bool run ( CBaseObject delegate)

the delegate will get a kSelectEndMessage throu the notify method where the sender is this CNewFileSelector object

virtual bool runInternal ( CBaseObject delegate)
protectedpure virtual
bool runModal ( )

run as modal dialog

virtual bool runModalInternal ( )
protectedpure virtual
void setAllowMultiFileSelection ( bool  state)

set allow multi file selection (only valid for kSelectFile selector style)

void setDefaultExtension ( const CFileExtension extension)

set default file extension

void setDefaultSaveName ( UTF8StringPtr  name)

set initial save name (UTF8 string)

void setInitialDirectory ( UTF8StringPtr  path)

set initial directory (UTF8 string)

void setTitle ( UTF8StringPtr  title)

set title of file selector

Member Data Documentation

bool allowMultiFileSelection
protected
const CFileExtension* defaultExtension
protected
UTF8StringBuffer defaultSaveName
protected
FileExtensionList extensions
protected
CFrame* frame
protected
UTF8StringBuffer initialPath
protected
IdStringPtr kSelectEndMessage = "CNewFileSelector Select End Message"
static
std::vector<UTF8StringBuffer> result
protected
UTF8StringBuffer title
protected

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