Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mpc-hc/rarfilesource.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/RFS.h
diff options
context:
space:
mode:
authorOctaneSnail <os@v12pwr.com>2008-12-12 00:49:42 +0300
committerOctaneSnail <os@v12pwr.com>2008-12-12 00:50:41 +0300
commitfd26389d904d75df5535cd199e3de7c8479ecae9 (patch)
tree26c0ce3a4499c60ab46a9439570c9b0d620e4b4d /RFS.h
parent8742b7d193eb7417bc58adee8aca517349cd4ee2 (diff)
Add file selector dialog.
Based on a patch from OV2.
Diffstat (limited to 'RFS.h')
-rw-r--r--RFS.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/RFS.h b/RFS.h
index b7373dd..cb976c5 100644
--- a/RFS.h
+++ b/RFS.h
@@ -34,10 +34,12 @@ public:
DWORD size;
};
-class File
+class File : public Node<File>
{
public:
- File (void) : parts (0), list (NULL), array (NULL) { }
+ File (void) : parts (0), list (NULL), array (NULL), filename(NULL),
+ type_known (false), unsupported(false) { }
+
~File (void)
{
FilePart *fp = list;
@@ -48,6 +50,7 @@ public:
delete tmp;
}
delete [] array;
+ delete [] filename;
}
CMediaType media_type;
@@ -56,6 +59,10 @@ public:
FilePart *list;
FilePart *array;
+
+ char *filename;
+ bool type_known;
+ bool unsupported;
};
typedef struct
@@ -88,6 +95,9 @@ private:
CRARFileSource (LPUNKNOWN punk, HRESULT *phr);
~CRARFileSource ();
+ int ScanArchive (wchar_t *archive_name, List<File> *file_list, int *known_files_found);
+ static int CALLBACK DlgFileList (HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam);
+
CRFSOutputPin m_pin;
CCritSec m_lock;
LPWSTR m_file_name;