Harlinn.Windows 0.1
Loading...
Searching...
No Matches
Harlinn::Windows::FileDialog Class Reference

#include <HWFileDialog.h>

Inheritance diagram for Harlinn::Windows::FileDialog:
[legend]
Collaboration diagram for Harlinn::Windows::FileDialog:
[legend]

Public Types

typedef ModalWindow Base
 
- Public Types inherited from Harlinn::Windows::ModalWindow
typedef Unknown Base
 
- Public Types inherited from Harlinn::Common::Core::Unknown
typedef IUnknown InterfaceType
 

Public Member Functions

virtual HW_EXPORT bool Show (HWND owner=0)
 
FileDialogSetFileTypes (UINT cFileTypes, const COMDLG_FILTERSPEC *rgFilterSpec)
 
FileDialogSetFileTypeIndex (UINT iFileType)
 
UINT GetFileTypeIndex ()
 
DWORD Advise (IFileDialogEvents *pfde)
 
DWORD Advise (const FileDialogEvents &fileDialogEvents)
 
FileDialogUnadvise (DWORD dwCookie)
 
FileDialogSetOptions (FILEOPENDIALOGOPTIONS fos)
 
FILEOPENDIALOGOPTIONS GetOptions ()
 
FileDialogSetDefaultFolder (IShellItem *psi)
 
FileDialogSetFolder (IShellItem *psi)
 
ShellItem GetFolder ()
 
ShellItem GetCurrentSelection ()
 
FileDialogSetFileName (LPCWSTR pszName)
 
WideString GetFileName ()
 
FileDialogSetTitle (LPCWSTR pszTitle)
 
FileDialogSetOkButtonLabel (LPCWSTR pszText)
 
FileDialogSetFileNameLabel (LPCWSTR pszLabel)
 
ShellItem GetResult ()
 
FileDialogAddPlace (IShellItem *psi, FDAP fdap=FDAP_BOTTOM)
 
FileDialogSetDefaultExtension (LPCWSTR pszDefaultExtension)
 
FileDialogClose (HRESULT hr)
 
FileDialogSetClientGuid (REFGUID guid)
 
FileDialogClearClientData ()
 
FileDialogSetFilter (IShellItemFilter *pFilter)
 
- Public Member Functions inherited from Harlinn::Windows::ModalWindow
HW_EXPORT bool Show (const Control &theOwner)
 
- Public Member Functions inherited from Harlinn::Common::Core::Unknown
constexpr Unknown () noexcept
 
 Unknown (IUnknown *unknown, bool addref=false) noexcept
 
 Unknown (REFIID iid, const Unknown &unknown, bool throwIfNoInterface=true)
 
 Unknown (const Unknown &other) noexcept
 
 Unknown (Unknown &&other) noexcept
 
 ~Unknown () noexcept
 
constexpr operator bool () const noexcept
 
Unknownoperator= (const Unknown &other) noexcept
 
Unknownoperator= (Unknown &&other) noexcept
 
void swap (Unknown &other) noexcept
 
void ResetPtr (IUnknown *other=nullptr, bool addRef=false) noexcept
 
Unknownoperator= (nullptr_t)
 
IUnknown * Detach ()
 
template<typename T >
requires std::is_base_of_v<Unknown, T >
T As () const
 
template<typename T >
requires std::is_base_of_v<Unknown, T>
bool Is () const noexcept
 
template<typename T >
requires std::is_base_of_v<IUnknown, T>
ComPtr< TAs () const
 
template<typename T >
requires std::is_base_of_v<IUnknown, T>
bool Is () const noexcept
 This function can be used to detect if an object supports a particular COM interface derived from IUnknown.
 
template<typename T = IUnknown>
TGetInterfacePointer () const noexcept
 
bool QueryInterface (REFIID riid, void **itf) const
 Queries a COM object for a pointer to one of its interface; identifying the interface by a reference to its interface identifier (IID). If the COM object implements the interface, then it returns a pointer to that interface after calling IUnknown::AddRef on it.
 
template<typename T >
requires std::is_base_of_v<IUnknown, T>
bool QueryInterface (T **itf) const
 
constexpr bool operator== (const Unknown &other) const noexcept
 
constexpr bool operator!= (const Unknown &other) const noexcept
 
constexpr bool operator== (const IUnknown *other) const noexcept
 
constexpr bool operator!= (const IUnknown *other) const noexcept
 

Public Attributes

boost::signals2::signal< void(FileDialog *sender, bool &accept) > OnFileOk
 
boost::signals2::signal< void(FileDialog *sender, const ShellItem &newFolder, bool &allow) > OnFolderChanging
 
boost::signals2::signal< void(FileDialog *sender) > OnFolderChange
 
boost::signals2::signal< void(FileDialog *sender) > OnSelectionChange
 
boost::signals2::signal< void(FileDialog *sender, const ShellItem &shellItem, FDE_SHAREVIOLATION_RESPONSE &response) > OnShareViolation
 
boost::signals2::signal< void(FileDialog *sender) > OnTypeChange
 
boost::signals2::signal< void(FileDialog *sender, const ShellItem &shellItem, FDE_OVERWRITE_RESPONSE &response) > OnOverwrite
 

Protected Member Functions

virtual HW_EXPORT void DoOnFileOk (bool &accept)
 
virtual HW_EXPORT void DoOnFolderChanging (const ShellItem &newFolder, bool &allow)
 
virtual HW_EXPORT void DoOnFolderChange ()
 
virtual HW_EXPORT void DoOnSelectionChange ()
 
virtual HW_EXPORT void DoOnShareViolation (const ShellItem &shellItem, FDE_SHAREVIOLATION_RESPONSE &response)
 
virtual HW_EXPORT void DoOnTypeChange ()
 
virtual HW_EXPORT void DoOnOverwrite (const ShellItem &shellItem, FDE_OVERWRITE_RESPONSE &response)
 

Friends

class FileDialogEventsImplementation
 

Additional Inherited Members

- Static Public Member Functions inherited from Harlinn::Common::Core::Unknown
template<typename T >
requires std::is_base_of_v<Unknown, T>
static T CoCreateInstanceFromClassId (const CLSID &clsid, DWORD classContext=CLSCTX_INPROC_SERVER)
 
template<typename T >
requires std::is_base_of_v<Unknown, T>
static T CoCreateInstanceFromClassId (const wchar_t *clsid, DWORD classContext=CLSCTX_INPROC_SERVER)
 
template<typename T >
requires std::is_base_of_v<Unknown, T>
static T CoCreateInstanceFromClassId (const WideString &clsid, DWORD classContext=CLSCTX_INPROC_SERVER)
 
template<typename T >
requires std::is_base_of_v<Unknown, T>
static T CoCreateInstanceFromProgId (const wchar_t *progId, DWORD classContext=CLSCTX_INPROC_SERVER)
 
template<typename T >
requires std::is_base_of_v<Unknown, T>
static T CoCreateInstanceFromProgId (const WideString &progId, DWORD classContext=CLSCTX_INPROC_SERVER)
 
template<typename T >
requires std::is_base_of_v<Unknown, T>
static T CoCreateInstanceFromDll (const ModuleHandle &dll, const CLSID &clsid)
 
- Protected Attributes inherited from Harlinn::Common::Core::Unknown
IUnknown * unknown_
 

Member Typedef Documentation

◆ Base

Member Function Documentation

◆ AddPlace()

FileDialog & Harlinn::Windows::FileDialog::AddPlace ( IShellItem * psi,
FDAP fdap = FDAP_BOTTOM )
inline

◆ Advise() [1/2]

DWORD Harlinn::Windows::FileDialog::Advise ( const FileDialogEvents & fileDialogEvents)
inline

◆ Advise() [2/2]

DWORD Harlinn::Windows::FileDialog::Advise ( IFileDialogEvents * pfde)
inline

◆ ClearClientData()

FileDialog & Harlinn::Windows::FileDialog::ClearClientData ( )
inline

◆ Close()

FileDialog & Harlinn::Windows::FileDialog::Close ( HRESULT hr)
inline

◆ DoOnFileOk()

void Harlinn::Windows::FileDialog::DoOnFileOk ( bool & accept)
protectedvirtual

◆ DoOnFolderChange()

void Harlinn::Windows::FileDialog::DoOnFolderChange ( )
protectedvirtual

◆ DoOnFolderChanging()

void Harlinn::Windows::FileDialog::DoOnFolderChanging ( const ShellItem & newFolder,
bool & allow )
protectedvirtual

◆ DoOnOverwrite()

void Harlinn::Windows::FileDialog::DoOnOverwrite ( const ShellItem & shellItem,
FDE_OVERWRITE_RESPONSE & response )
protectedvirtual

◆ DoOnSelectionChange()

void Harlinn::Windows::FileDialog::DoOnSelectionChange ( )
protectedvirtual

◆ DoOnShareViolation()

void Harlinn::Windows::FileDialog::DoOnShareViolation ( const ShellItem & shellItem,
FDE_SHAREVIOLATION_RESPONSE & response )
protectedvirtual

◆ DoOnTypeChange()

void Harlinn::Windows::FileDialog::DoOnTypeChange ( )
protectedvirtual

◆ GetCurrentSelection()

ShellItem Harlinn::Windows::FileDialog::GetCurrentSelection ( )
inline

◆ GetFileName()

WideString Harlinn::Windows::FileDialog::GetFileName ( )
inline

◆ GetFileTypeIndex()

UINT Harlinn::Windows::FileDialog::GetFileTypeIndex ( )
inline

◆ GetFolder()

ShellItem Harlinn::Windows::FileDialog::GetFolder ( )
inline

◆ GetOptions()

FILEOPENDIALOGOPTIONS Harlinn::Windows::FileDialog::GetOptions ( )
inline

◆ GetResult()

ShellItem Harlinn::Windows::FileDialog::GetResult ( )
inline

◆ SetClientGuid()

FileDialog & Harlinn::Windows::FileDialog::SetClientGuid ( REFGUID guid)
inline

◆ SetDefaultExtension()

FileDialog & Harlinn::Windows::FileDialog::SetDefaultExtension ( LPCWSTR pszDefaultExtension)
inline

◆ SetDefaultFolder()

FileDialog & Harlinn::Windows::FileDialog::SetDefaultFolder ( IShellItem * psi)
inline

◆ SetFileName()

FileDialog & Harlinn::Windows::FileDialog::SetFileName ( LPCWSTR pszName)
inline

◆ SetFileNameLabel()

FileDialog & Harlinn::Windows::FileDialog::SetFileNameLabel ( LPCWSTR pszLabel)
inline

◆ SetFileTypeIndex()

FileDialog & Harlinn::Windows::FileDialog::SetFileTypeIndex ( UINT iFileType)
inline

◆ SetFileTypes()

FileDialog & Harlinn::Windows::FileDialog::SetFileTypes ( UINT cFileTypes,
const COMDLG_FILTERSPEC * rgFilterSpec )
inline

◆ SetFilter()

FileDialog & Harlinn::Windows::FileDialog::SetFilter ( IShellItemFilter * pFilter)
inline

◆ SetFolder()

FileDialog & Harlinn::Windows::FileDialog::SetFolder ( IShellItem * psi)
inline

◆ SetOkButtonLabel()

FileDialog & Harlinn::Windows::FileDialog::SetOkButtonLabel ( LPCWSTR pszText)
inline

◆ SetOptions()

FileDialog & Harlinn::Windows::FileDialog::SetOptions ( FILEOPENDIALOGOPTIONS fos)
inline

◆ SetTitle()

FileDialog & Harlinn::Windows::FileDialog::SetTitle ( LPCWSTR pszTitle)
inline

◆ Show()

bool Harlinn::Windows::FileDialog::Show ( HWND owner = 0)
virtual

Reimplemented from Harlinn::Windows::ModalWindow.

◆ Unadvise()

FileDialog & Harlinn::Windows::FileDialog::Unadvise ( DWORD dwCookie)
inline

Friends And Related Symbol Documentation

◆ FileDialogEventsImplementation

friend class FileDialogEventsImplementation
friend

Member Data Documentation

◆ OnFileOk

boost::signals2::signal<void( FileDialog* sender, bool& accept ) > Harlinn::Windows::FileDialog::OnFileOk

◆ OnFolderChange

boost::signals2::signal<void( FileDialog* sender ) > Harlinn::Windows::FileDialog::OnFolderChange

◆ OnFolderChanging

boost::signals2::signal<void( FileDialog* sender, const ShellItem& newFolder, bool& allow ) > Harlinn::Windows::FileDialog::OnFolderChanging

◆ OnOverwrite

boost::signals2::signal<void( FileDialog* sender, const ShellItem& shellItem, FDE_OVERWRITE_RESPONSE& response ) > Harlinn::Windows::FileDialog::OnOverwrite

◆ OnSelectionChange

boost::signals2::signal<void( FileDialog* sender ) > Harlinn::Windows::FileDialog::OnSelectionChange

◆ OnShareViolation

boost::signals2::signal<void( FileDialog* sender, const ShellItem& shellItem, FDE_SHAREVIOLATION_RESPONSE& response ) > Harlinn::Windows::FileDialog::OnShareViolation

◆ OnTypeChange

boost::signals2::signal<void( FileDialog* sender ) > Harlinn::Windows::FileDialog::OnTypeChange

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