mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-29 00:59:44 -06:00
Import r67258 of the wxWidgets trunk, which I expect will before
long become wxWidgets 2.9.2, which in turn is expected to be the last 2.9 release before the 3.0 stable release. Since the full wxWidgets distribution is rather large, I have imported only the parts that we use, on a subdirectory basis: art include/wx/*.* include/wx/aui include/wx/cocoa include/wx/generic include/wx/gtk include/wx/meta include/wx/msw include/wx/osx include/wx/persist include/wx/private include/wx/protocol include/wx/unix src/aui src/common src/generic src/gtk src/msw src/osx src/unix git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@7380 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
146
Externals/wxWidgets3/include/wx/volume.h
vendored
Normal file
146
Externals/wxWidgets3/include/wx/volume.h
vendored
Normal file
@ -0,0 +1,146 @@
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// Name: wx/volume.h
|
||||
// Purpose: wxFSVolume - encapsulates system volume information
|
||||
// Author: George Policello
|
||||
// Modified by:
|
||||
// Created: 28 Jan 02
|
||||
// RCS-ID: $Id: volume.h 56910 2008-11-22 15:54:33Z FM $
|
||||
// Copyright: (c) 2002 George Policello
|
||||
// Licence: wxWindows licence
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// wxFSVolume represents a volume/drive in a file system
|
||||
// ----------------------------------------------------------------------------
|
||||
|
||||
#ifndef _WX_FSVOLUME_H_
|
||||
#define _WX_FSVOLUME_H_
|
||||
|
||||
#include "wx/defs.h"
|
||||
|
||||
#if wxUSE_FSVOLUME
|
||||
|
||||
#include "wx/arrstr.h"
|
||||
|
||||
// the volume flags
|
||||
enum wxFSVolumeFlags
|
||||
{
|
||||
// is the volume mounted?
|
||||
wxFS_VOL_MOUNTED = 0x0001,
|
||||
|
||||
// is the volume removable (floppy, CD, ...)?
|
||||
wxFS_VOL_REMOVABLE = 0x0002,
|
||||
|
||||
// read only? (otherwise read write)
|
||||
wxFS_VOL_READONLY = 0x0004,
|
||||
|
||||
// network resources
|
||||
wxFS_VOL_REMOTE = 0x0008
|
||||
};
|
||||
|
||||
// the volume types
|
||||
enum wxFSVolumeKind
|
||||
{
|
||||
wxFS_VOL_FLOPPY,
|
||||
wxFS_VOL_DISK,
|
||||
wxFS_VOL_CDROM,
|
||||
wxFS_VOL_DVDROM,
|
||||
wxFS_VOL_NETWORK,
|
||||
wxFS_VOL_OTHER,
|
||||
wxFS_VOL_MAX
|
||||
};
|
||||
|
||||
class WXDLLIMPEXP_BASE wxFSVolumeBase
|
||||
{
|
||||
public:
|
||||
// return the array containing the names of the volumes
|
||||
//
|
||||
// only the volumes with the flags such that
|
||||
// (flags & flagsSet) == flagsSet && !(flags & flagsUnset)
|
||||
// are returned (by default, all mounted ones)
|
||||
static wxArrayString GetVolumes(int flagsSet = wxFS_VOL_MOUNTED,
|
||||
int flagsUnset = 0);
|
||||
|
||||
// stop execution of GetVolumes() called previously (should be called from
|
||||
// another thread, of course)
|
||||
static void CancelSearch();
|
||||
|
||||
// create the volume object with this name (should be one of those returned
|
||||
// by GetVolumes()).
|
||||
wxFSVolumeBase();
|
||||
wxFSVolumeBase(const wxString& name);
|
||||
bool Create(const wxString& name);
|
||||
|
||||
// accessors
|
||||
// ---------
|
||||
|
||||
// is this a valid volume?
|
||||
bool IsOk() const;
|
||||
|
||||
// kind of this volume?
|
||||
wxFSVolumeKind GetKind() const;
|
||||
|
||||
// flags of this volume?
|
||||
int GetFlags() const;
|
||||
|
||||
// can we write to this volume?
|
||||
bool IsWritable() const { return !(GetFlags() & wxFS_VOL_READONLY); }
|
||||
|
||||
// get the name of the volume and the name which should be displayed to the
|
||||
// user
|
||||
wxString GetName() const { return m_volName; }
|
||||
wxString GetDisplayName() const { return m_dispName; }
|
||||
|
||||
// TODO: operatios (Mount(), Unmount(), Eject(), ...)?
|
||||
|
||||
protected:
|
||||
// the internal volume name
|
||||
wxString m_volName;
|
||||
|
||||
// the volume name as it is displayed to the user
|
||||
wxString m_dispName;
|
||||
|
||||
// have we been initialized correctly?
|
||||
bool m_isOk;
|
||||
};
|
||||
|
||||
#if wxUSE_GUI
|
||||
|
||||
#include "wx/icon.h"
|
||||
#include "wx/iconbndl.h" // only for wxIconArray
|
||||
|
||||
enum wxFSIconType
|
||||
{
|
||||
wxFS_VOL_ICO_SMALL = 0,
|
||||
wxFS_VOL_ICO_LARGE,
|
||||
wxFS_VOL_ICO_SEL_SMALL,
|
||||
wxFS_VOL_ICO_SEL_LARGE,
|
||||
wxFS_VOL_ICO_MAX
|
||||
};
|
||||
|
||||
// wxFSVolume adds GetIcon() to wxFSVolumeBase
|
||||
class WXDLLIMPEXP_CORE wxFSVolume : public wxFSVolumeBase
|
||||
{
|
||||
public:
|
||||
wxFSVolume() : wxFSVolumeBase() { InitIcons(); }
|
||||
wxFSVolume(const wxString& name) : wxFSVolumeBase(name) { InitIcons(); }
|
||||
|
||||
wxIcon GetIcon(wxFSIconType type) const;
|
||||
|
||||
private:
|
||||
void InitIcons();
|
||||
|
||||
// the different icons for this volume (created on demand)
|
||||
wxIconArray m_icons;
|
||||
};
|
||||
|
||||
#else // !wxUSE_GUI
|
||||
|
||||
// wxFSVolume is the same thing as wxFSVolume in wxBase
|
||||
typedef wxFSVolumeBase wxFSVolume;
|
||||
|
||||
#endif // wxUSE_GUI/!wxUSE_GUI
|
||||
|
||||
#endif // wxUSE_FSVOLUME
|
||||
|
||||
#endif // _WX_FSVOLUME_H_
|
Reference in New Issue
Block a user