-
Notifications
You must be signed in to change notification settings - Fork 0
/
contentplugin.h
166 lines (139 loc) · 3.14 KB
/
contentplugin.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
//==========================================================================
// contentplugin.h: C++ -ish TC/WDX plugin API interface
//==========================================================================
// (C) 2022 Raziel Anarki, based on the official WDX guide 2.12
//--------------------------------------------------------------------------
#pragma once
#include "contentplugin_types.h"
//==========================================================================
#ifdef DLL_EXPORTS
#define PUBLIC extern "C" __declspec(dllexport)
#else
#define PUBLIC extern "C" __declspec(dllimport)
#endif
#define PLUGINAPI __stdcall
//==========================================================================
PUBLIC
VOID PLUGINAPI ContentGetDetectString
(
LPSTR DetectString,
UINT MaxSize
);
PUBLIC
VOID PLUGINAPI ContentSetDefaultParams
(
LPCONTENTDEFAULTPARAMS Params
);
PUBLIC
VOID PLUGINAPI ContentSendStateInformation
(
StateChange ChangeFlags,
LPSTR CurrentPath
);
PUBLIC
VOID PLUGINAPI ContentSendStateInformationW
(
StateChange ChangeFlags,
LPWSTR CurrentPathW
);
PUBLIC
VOID PLUGINAPI ContentPluginUnloading();
//==========================================================================
PUBLIC
FieldType PLUGINAPI ContentGetSupportedField
(
UINT FieldIndex,
LPSTR FieldName,
LPSTR FieldUnits,
UINT MaxSize
);
PUBLIC
SortOrder PLUGINAPI ContentGetDefaultSortOrder
(
UINT FieldIndex
);
PUBLIC
FieldType PLUGINAPI ContentGetValue
(
LPSTR FileName,
UINT FieldIndex,
UINT UnitIndex,
LPVOID FieldData,
UINT MaxSize,
UINT Flags
);
PUBLIC
VOID PLUGINAPI ContentStopGetValue
(
LPSTR FileName
);
PUBLIC
FieldType PLUGINAPI ContentGetValueW
(
LPWSTR FileNameW,
UINT FieldIndex,
UINT UnitIndex,
LPVOID FieldData,
UINT MaxSize,
UINT Flags
);
PUBLIC
VOID PLUGINAPI ContentStopGetValueW
(
LPWSTR FileNameW
);
/** /
//==========================================================================
// TODO: API-s
INT ContentGetSupportedFieldFlags
(
INT FieldIndex
);
INT ContentEditValue
(
HWND ParentWin,
INT FieldIndex,
INT UnitIndex,
INT FieldType,
LPVOID FieldValue,
INT MaxSize,
INT Flags,
LPSTR LangID
);
INT ContentGetSupportedOperators
(
INT FieldIndex,
LPSTR FieldOperators,
INT MaxSize
);
//==========================================================================
// TODO: Unicode API-s
INT ContentSetValue
(
LPTSTR FileName,
INT FieldIndex,
INT UnitIndex,
INT FieldType,
LPVOID FieldValue,
INT Flags
);
INT ContentFindValue
(
LPTSTR FileName,
INT FieldIndex,
INT UnitIndex,
INT OperationIndex,
INT FieldType,
INT Flags,
LPVOID FieldValue
);
INT ContentCompareFiles
(
PROGRESSCALLBACKPROC ProgressCallback,
UINT CompareIndex,
LPSTR FileName1,
LPSTR FileName2,
LPFILEDETAILS FileDetails
);
/**/
//==========================================================================