Subversion Repositories Kolibri OS

Rev

Rev 9576 | Rev 9597 | Go to most recent revision | Only display areas with differences | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 9576 Rev 9580
1
char path_to_file[PATHLEN];
1
char path_to_file[PATHLEN];
2
char file_name2[PATHLEN];
2
char file_name2[PATHLEN];
3
edit_box file_name_ed = {230,59,32,0xffffff,0x94AECE,0xFFFfff,0xffffff,0x10000000,sizeof(file_name2)-2,#file_name2,NULL, 0b,2,2};
3
edit_box file_name_ed = {230,59,32,0xffffff,0x94AECE,0xFFFfff,0xffffff,0x10000000,sizeof(file_name2)-2,#file_name2,NULL, 0b,2,2};
4
edit_box path_to_file_ed = {160,120,79,0xffffff,0x94AECE,0xFFFfff,0xffffff,2,sizeof(path_to_file)-2,#path_to_file,NULL, 0b,2,2};
4
edit_box path_to_file_ed = {160,120,79,0xffffff,0x94AECE,0xFFFfff,0xffffff,2,sizeof(path_to_file)-2,#path_to_file,NULL, 0b,2,2};
5
 
5
 
6
BDVK file_info_general;
6
BDVK file_info_general;
7
BDVK file_info_dirsize;
7
BDVK file_info_dirsize;
8
 
8
 
9
bool apply_question_active;
9
bool apply_question_active;
10
 
10
 
11
DIR_SIZE more_files_count;
11
DIR_SIZE more_files_count;
12
DIR_SIZE dir_size;
12
DIR_SIZE dir_size;
13
 
13
 
14
checkbox ch_read_only = { PR_T_ONLY_READ, NULL };
14
checkbox ch_read_only = { PR_T_ONLY_READ, NULL };
15
checkbox ch_hidden = { PR_T_HIDDEN, NULL };
15
checkbox ch_hidden = { PR_T_HIDDEN, NULL };
16
checkbox ch_system = { PR_T_SYSTEM, NULL };
16
checkbox ch_system = { PR_T_SYSTEM, NULL };
17
 
17
 
18
void SetPropertiesFile(dword cur_file, bdvk_pointer)
18
void SetPropertiesFile(dword cur_file, bdvk_pointer)
19
{
19
{
20
	GetFileInfo(cur_file, bdvk_pointer);
20
	GetFileInfo(cur_file, bdvk_pointer);
21
	ESI = bdvk_pointer;
21
	ESI = bdvk_pointer;
22
	ESI.BDVK.readonly = ch_read_only.checked;
22
	ESI.BDVK.readonly = ch_read_only.checked;
23
	ESI.BDVK.hidden = ch_hidden.checked;
23
	ESI.BDVK.hidden = ch_hidden.checked;
24
	ESI.BDVK.system = ch_system.checked;
24
	ESI.BDVK.system = ch_system.checked;
25
	SetFileInfo(cur_file, bdvk_pointer);
25
	SetFileInfo(cur_file, bdvk_pointer);
26
}
26
}
27
 
27
 
28
void SetPropertiesDir(dword way)
28
void SetPropertiesDir(dword way)
29
{
29
{
30
	dword dirbuf, fcount, i, filename;
30
	dword dirbuf, fcount, i, filename;
31
	dword cur_file;
31
	dword cur_file;
32
	if (dir_exists(way))
32
	if (dir_exists(way))
33
	{
33
	{
34
		cur_file = malloc(PATHLEN);
34
		cur_file = malloc(PATHLEN);
35
		GetDir(#dirbuf, #fcount, way, DIRS_ONLYREAL);
35
		GetDir(#dirbuf, #fcount, way, DIRS_ONLYREAL);
36
		for (i=0; i
36
		for (i=0; i
37
		{
37
		{
38
			filename = i*304+dirbuf+72;
38
			filename = i*304+dirbuf+72;
39
			sprintf(cur_file, "%s/%s", way, filename);
39
			sprintf(cur_file, "%s/%s", way, filename);
40
			if ( ESDWORD[filename-40] & ATR_FOLDER )
40
			if ( ESDWORD[filename-40] & ATR_FOLDER )
41
			{
41
			{
42
				SetPropertiesDir(cur_file);
42
				SetPropertiesDir(cur_file);
43
			}
43
			}
44
			SetPropertiesFile(cur_file, #file_info_dirsize);
44
			SetPropertiesFile(cur_file, #file_info_dirsize);
45
		}
45
		}
46
		free(cur_file);
46
		free(cur_file);
47
	}
47
	}
48
}
48
}
49
 
49
 
50
#define SET_PROPERTIES_SINGLE_FILE 0
50
#define SET_PROPERTIES_SINGLE_FILE 0
51
#define SET_PROPERTIES_NO_SUBFOLDER 1
51
#define SET_PROPERTIES_NO_SUBFOLDER 1
52
#define SET_PROPERTIES_ALL_SUBFOLDER 2
52
#define SET_PROPERTIES_ALL_SUBFOLDER 2
53
void SetProperties(int mode)
53
void SetProperties(int mode)
54
{
54
{
55
	char pcur_file[4096];
55
	char pcur_file[4096];
56
	dword i;
56
	dword i;
57
 
57
 
58
	apply_question_active = false;
58
	apply_question_active = false;
59
 
59
 
60
	if (SET_PROPERTIES_SINGLE_FILE == mode) {
60
	if (SET_PROPERTIES_SINGLE_FILE == mode) {
61
		SetPropertiesFile(#file_path, #file_info_general);
61
		SetPropertiesFile(#file_path, #file_info_general);
62
	}
62
	}
63
 
63
 
64
	if (SET_PROPERTIES_ALL_SUBFOLDER == mode)
64
	if (SET_PROPERTIES_ALL_SUBFOLDER == mode)
65
	|| (SET_PROPERTIES_NO_SUBFOLDER == mode)
65
	|| (SET_PROPERTIES_NO_SUBFOLDER == mode)
66
	{
66
	{
67
		if (getSelectedCount())
67
		if (getSelectedCount())
68
		{
68
		{
69
			for (i=0; i
69
			for (i=0; i
70
			{
70
			{
71
				if (getElementSelectedFlag(i) == true) 
71
				if (getElementSelectedFlag(i) == true) 
72
				{
72
				{
73
					sprintf(#pcur_file,"%s/%s",path,items.get(i)*304+buf+72);
73
					sprintf(#pcur_file,"%s/%s",path,items.get(i)*304+buf+72);
74
					SetPropertiesFile(#pcur_file, #file_info_general);
74
					SetPropertiesFile(#pcur_file, #file_info_general);
75
					if (SET_PROPERTIES_ALL_SUBFOLDER == mode) {
75
					if (SET_PROPERTIES_ALL_SUBFOLDER == mode) {
76
						if (dir_exists(#pcur_file)) SetPropertiesDir(#pcur_file);
76
						if (dir_exists(#pcur_file)) SetPropertiesDir(#pcur_file);
77
					}
77
					}
78
				}
78
				}
79
			}
79
			}
80
		}
80
		}
81
		else
81
		else
82
		{
82
		{
83
			SetPropertiesFile(#file_path, #file_info_general);
83
			SetPropertiesFile(#file_path, #file_info_general);
84
			if (SET_PROPERTIES_ALL_SUBFOLDER == mode) SetPropertiesDir(#file_path);
84
			if (SET_PROPERTIES_ALL_SUBFOLDER == mode) SetPropertiesDir(#file_path);
85
		}
85
		}
86
	}
86
	}
87
 
87
 
88
	cmd_free=3;
88
	cmd_free=3;
89
	OpenDir(ONLY_OPEN);
89
	OpenDir(ONLY_OPEN);
90
	ExitProcess();
90
	ExitProcess();
91
}
91
}
92
 
92
 
93
void ShowConfirmQuestionPopin()
93
void ShowConfirmQuestionPopin()
94
{
94
{
95
	apply_question_active = true;
95
	apply_question_active = true;
96
	DrawPopup(15,80,250,90,1,sc.work, sc.work_graph);
96
	DrawPopup(15,80,250,90,1,sc.work, sc.work_graph);
97
	WriteText(35, 102, 0x90, 0x000000, QUEST_1);
97
	WriteText(35, 102, 0x90, 0x000000, QUEST_1);
98
	WriteText(65, 117, 0x90, 0x000000, QUEST_2);
98
	WriteText(65, 117, 0x90, 0x000000, QUEST_2);
99
	DrawStandartCaptButton(62,138,B_SETINGS_APPLY_SUBFOLDER,T_YES);
99
	DrawStandartCaptButton(62,138,B_SETINGS_APPLY_SUBFOLDER,T_YES);
100
	DrawStandartCaptButton(155,138,B_SETINGS_APPLY_NO_SUBFOLDER,T_NO);
100
	DrawStandartCaptButton(155,138,B_SETINGS_APPLY_NO_SUBFOLDER,T_NO);
101
}
101
}
102
 
102
 
103
void GetSizeMoreFiles(dword way)
103
void GetSizeMoreFiles(dword way)
104
{
104
{
105
	char cur_file[4096];
105
	char cur_file[4096];
106
	dword i;
106
	dword i;
107
	
107
	
108
	for (i=0; i
108
	for (i=0; i
109
	{
109
	{
110
		if (getElementSelectedFlag(i) == true) 
110
		if (getElementSelectedFlag(i) == true) 
111
		{
111
		{
112
			sprintf(#cur_file,"%s/%s",way,items.get(i)*304+buf+72);
112
			sprintf(#cur_file,"%s/%s",way,items.get(i)*304+buf+72);
113
			if (ESDWORD[items.get(i)*304+buf+32] & ATR_FOLDER )
113
			if (ESDWORD[items.get(i)*304+buf+32] & ATR_FOLDER )
114
			{
114
			{
115
				more_files_count.calculate_loop(#cur_file);
115
				more_files_count.calculate_loop(#cur_file);
116
				more_files_count.folders++;
116
				more_files_count.folders++;
117
			}
117
			}
118
			else
118
			else
119
			{
119
			{
120
				GetFileInfo(#cur_file, #file_info_dirsize);
120
				GetFileInfo(#cur_file, #file_info_dirsize);
121
				more_files_count.bytes += file_info_dirsize.sizelo;
121
				more_files_count.bytes += file_info_dirsize.sizelo;
122
				more_files_count.files++;
122
				more_files_count.files++;
123
			}
123
			}
124
		}
124
		}
125
	}  
125
	}  
126
}
126
}
127
 
127
 
128
void properties_dialog()
128
void properties_dialog()
129
{
129
{
130
	int id;
130
	int id;
131
	
131
	
132
	if (getSelectedCount())
132
	if (getSelectedCount())
133
	{
133
	{
134
		more_files_count.get(NULL);
134
		more_files_count.get(NULL);
135
		GetSizeMoreFiles(path);
135
		GetSizeMoreFiles(path);
136
		ch_read_only.checked = 0;
136
		ch_read_only.checked = 0;
137
		ch_hidden.checked = 0;
137
		ch_hidden.checked = 0;
138
		ch_system.checked = 0;
138
		ch_system.checked = 0;
139
	}
139
	}
140
	else
140
	else
141
	{
141
	{
142
		GetFileInfo(#file_path, #file_info_general);
142
		GetFileInfo(#file_path, #file_info_general);
143
		edit_box_set_text stdcall (#file_name_ed, #file_name);
143
		edit_box_set_text stdcall (#file_name_ed, #file_name);
144
		if(itdir) dir_size.get(#file_path);
144
		if(itdir) dir_size.get(#file_path);
145
		ch_read_only.checked = file_info_general.readonly;
145
		ch_read_only.checked = file_info_general.readonly;
146
		ch_hidden.checked = file_info_general.hidden;
146
		ch_hidden.checked = file_info_general.hidden;
147
		ch_system.checked = file_info_general.system;
147
		ch_system.checked = file_info_general.system;
148
	}
148
	}
149
	edit_box_set_text stdcall (#path_to_file_ed, path);
149
	edit_box_set_text stdcall (#path_to_file_ed, path);
150
	
150
	
151
	SetEventMask(EVM_REDRAW + EVM_KEY + EVM_BUTTON + EVM_MOUSE + EVM_MOUSE_FILTER);
151
	SetEventMask(EVM_REDRAW + EVM_KEY + EVM_BUTTON + EVM_MOUSE + EVM_MOUSE_FILTER);
152
	loop() switch(WaitEvent())
152
	loop() switch(WaitEvent())
153
	{
153
	{
154
		case evButton: 
154
		case evButton: 
155
				id=GetButtonID();
155
				id=GetButtonID();
156
				ch_read_only.click(id);
156
				ch_read_only.click(id);
157
				ch_hidden.click(id);
157
				ch_hidden.click(id);
158
				ch_system.click(id);
158
				ch_system.click(id);
159
				if (apply_question_active)
159
				if (apply_question_active)
160
				{
160
				{
161
					IF (id==B_SETINGS_APPLY_SUBFOLDER) 
161
					IF (id==B_SETINGS_APPLY_SUBFOLDER) 
162
						SetProperties(SET_PROPERTIES_ALL_SUBFOLDER);
162
						SetProperties(SET_PROPERTIES_ALL_SUBFOLDER);
163
					IF (id==B_SETINGS_APPLY_NO_SUBFOLDER) 
163
					IF (id==B_SETINGS_APPLY_NO_SUBFOLDER) 
164
						SetProperties(SET_PROPERTIES_NO_SUBFOLDER);
164
						SetProperties(SET_PROPERTIES_NO_SUBFOLDER);
165
					break;
165
					break;
166
				}
166
				}
167
				if (id==1) || (id==B_CLOSE)
167
				if (id==1) || (id==B_CLOSE)
168
				{
168
				{
169
					cmd_free=3;
169
					cmd_free=3;
170
					ExitProcess();
170
					ExitProcess();
171
				}
171
				}
172
				if (id==B_APPLY) EventApplyProperties();
172
				if (id==B_APPLY) EventApplyProperties();
173
				break;
173
				break;
174
				
174
				
175
		case evMouse:
175
		case evMouse:
176
				edit_box_mouse stdcall (#file_name_ed);
176
				edit_box_mouse stdcall (#file_name_ed);
177
				edit_box_mouse stdcall (#path_to_file_ed);
177
				edit_box_mouse stdcall (#path_to_file_ed);
178
				break;
178
				break;
179
			
179
			
180
		case evKey:
180
		case evKey:
181
				GetKeys();
181
				GetKeys();
182
 
182
 
183
				if (apply_question_active)
183
				if (apply_question_active)
184
				{
184
				{
185
					IF (key_scancode==SCAN_CODE_ENTER) 
185
					IF (key_scancode==SCAN_CODE_ENTER) 
186
						SetProperties(SET_PROPERTIES_ALL_SUBFOLDER);
186
						SetProperties(SET_PROPERTIES_ALL_SUBFOLDER);
187
					IF (key_scancode==SCAN_CODE_ESC) 
187
					IF (key_scancode==SCAN_CODE_ESC) 
188
						SetProperties(SET_PROPERTIES_NO_SUBFOLDER);
188
						SetProperties(SET_PROPERTIES_NO_SUBFOLDER);
189
					break;
189
					break;
190
				}
190
				}
191
 
191
 
192
				switch(key_scancode)
192
				switch(key_scancode)
193
				{
193
				{
194
					case SCAN_CODE_ESC:
194
					case SCAN_CODE_ESC:
195
						cmd_free=3;
195
						cmd_free=3;
196
						ExitProcess();
196
						ExitProcess();
197
						break;
197
						break;
198
 
198
 
199
					case SCAN_CODE_ENTER:
199
					case SCAN_CODE_ENTER:
200
						EventApplyProperties();
200
						EventApplyProperties();
201
						break;
201
						break;
202
 
202
 
203
					case SCAN_CODE_KEY_A:
203
					case SCAN_CODE_KEY_A:
204
					case SCAN_CODE_KEY_C:
204
					case SCAN_CODE_KEY_C:
205
						if (key_modifier & KEY_LCTRL) || (key_modifier & KEY_RCTRL) {
205
						if (key_modifier & KEY_LCTRL) || (key_modifier & KEY_RCTRL) {
206
							EAX = key_editbox; 
206
							EAX = key_editbox; 
207
							edit_box_key stdcall(#file_name_ed);
207
							edit_box_key stdcall(#file_name_ed);
208
							edit_box_key stdcall(#path_to_file_ed);
208
							edit_box_key stdcall(#path_to_file_ed);
209
						}
209
						}
210
				}
210
				}
211
				break;
211
				break;
212
				
212
				
213
		case evReDraw:
213
		case evReDraw:
214
				DrawPropertiesWindow();
214
				DrawPropertiesWindow();
215
	}
215
	}
216
}
216
}
217
 
217
 
218
void DrawPropertiesWindow()
218
void DrawPropertiesWindow()
219
{
219
{
220
	proc_info pform;
220
	proc_info pform;
221
	char element_size_label[32];
221
	char element_size_label[32];
222
	char folder_info[200];
222
	char folder_info[200];
223
	dword ext1;
223
	dword ext1;
224
	dword element_size;
224
	dword element_size;
225
	incn y;
225
	incn y;
226
	char temp_path[PATHLEN];
226
	char temp_path[PATHLEN];
227
	bool show_date = false;
227
	bool show_date = false;
228
 
228
 
229
	if (chrnum(path, '/')>1) || (streq(path, "/kolibrios")) || (streq(path, "/sys")) show_date = true;
229
	if (chrnum(path, '/')>1) || (streq(path, "/kolibrios")) || (streq(path, "/sys")) show_date = true;
230
	if (getSelectedCount()) show_date = false;
230
	if (getSelectedCount()) show_date = false;
231
 
231
 
232
	DefineAndDrawWindow(Form.left + 150,150,315,show_date*60+300+skin_height,0x34,sc.work,WINDOW_TITLE_PROPERTIES,0);
232
	DefineAndDrawWindow(Form.left + 150,150,315,show_date*60+300+skin_height,0x34,sc.work,WINDOW_TITLE_PROPERTIES,0);
233
	GetProcessInfo(#pform, SelfInfo);
233
	GetProcessInfo(#pform, SelfInfo);
234
 
234
 
235
	DrawStandartCaptButton(pform.cwidth - 96, pform.cheight-34, B_CLOSE, T_CLOSE);
235
	DrawStandartCaptButton(pform.cwidth - 96, pform.cheight-34, B_CLOSE, T_CLOSE);
236
	DrawStandartCaptButton(pform.cwidth -208, pform.cheight-34, B_APPLY, T_APPLY);
236
	DrawStandartCaptButton(pform.cwidth -208, pform.cheight-34, B_APPLY, T_APPLY);
237
	
237
	
238
	WriteText(10, 78, 0x90, sc.work_text, PR_T_DEST);
238
	WriteText(10, 78, 0x90, sc.work_text, PR_T_DEST);
239
	edit_box_draw stdcall (#path_to_file_ed);
239
	edit_box_draw stdcall (#path_to_file_ed);
240
	
240
	
241
	if (getSelectedCount())
241
	if (getSelectedCount())
242
	{
242
	{
243
		PropertiesDrawIcon(NULL, "");
243
		PropertiesDrawIcon(NULL, "");
244
		sprintf(#folder_info,T_FILES_FOLDERS,more_files_count.files,more_files_count.folders);
244
		sprintf(#folder_info,T_FILES_FOLDERS,more_files_count.files,more_files_count.folders);
245
		WriteText(file_name_ed.left+4, 30, 0x90, sc.work_text, #folder_info);
245
		WriteText(file_name_ed.left+4, 30, 0x90, sc.work_text, #folder_info);
246
		sprintf(#element_size_label,T_PROP_SIZE,ConvertSize64(more_files_count.bytes, NULL),more_files_count.bytes);
246
		sprintf(#element_size_label,T_PROP_SIZE,ConvertSize64(more_files_count.bytes, NULL),more_files_count.bytes);
247
		WriteText(10, 97, 0x90, sc.work_text, #element_size_label);
247
		WriteText(10, 97, 0x90, sc.work_text, #element_size_label);
248
	}
248
	}
249
	else
249
	else
250
	{
250
	{
251
		if ( file_info_general.isfolder )
251
		if ( file_info_general.isfolder )
252
				PropertiesDrawIcon(NULL, "");
252
				PropertiesDrawIcon(NULL, "");
253
		else {
253
		else {
254
			sprintf(#temp_path,"%s/%s",path,#file_name2);
254
			sprintf(#temp_path,"%s/%s",path,#file_name2);
255
			ext1 = strrchr(#file_name2,'.');
255
			ext1 = strrchr(#file_name2,'.');
256
			if (ext1) ext1 += #file_name2;
256
			if (ext1) ext1 += #file_name2;
257
			PropertiesDrawIcon(#temp_path, ext1);
257
			PropertiesDrawIcon(#temp_path, ext1);
258
		}
258
		}
259
		WriteText(file_name_ed.left, file_name_ed.top-15, 0x80, sc.work_text, PR_T_NAME);
259
		WriteText(file_name_ed.left, file_name_ed.top-15, 0x80, sc.work_text, PR_T_NAME);
260
		DrawEditBox(#file_name_ed);
260
		DrawEditBox(#file_name_ed);
261
		
261
		
262
		if (!itdir) {
262
		if (!itdir) {
263
			element_size = file_info_general.sizelo;
263
			element_size = file_info_general.sizelo;
264
		} else {
264
		} else {
265
			sprintf(#folder_info,T_FILES_FOLDERS,more_files_count.files,more_files_count.folders);
265
			sprintf(#folder_info,T_FILES_FOLDERS,dir_size.files,dir_size.folders);
266
			WriteText(10,  117, 0x90, sc.work_text, PR_T_CONTAINS);                              
266
			WriteText(10,  117, 0x90, sc.work_text, PR_T_CONTAINS);                              
267
			WriteText(120, 117, 0x90, sc.work_text, #folder_info);
267
			WriteText(120, 117, 0x90, sc.work_text, #folder_info);
268
			element_size = dir_size.bytes;
268
			element_size = dir_size.bytes;
269
		}
269
		}
270
		sprintf(#element_size_label,T_PROP_SIZE,ConvertSize64(element_size, NULL),element_size);
270
		sprintf(#element_size_label,T_PROP_SIZE,ConvertSize64(element_size, NULL),element_size);
271
		WriteText(10, 99, 0x90, sc.work_text, #element_size_label);
271
		WriteText(10, 99, 0x90, sc.work_text, #element_size_label);
272
	}
272
	}
273
 
273
 
274
	if (show_date) {
274
	if (show_date) {
275
		WriteTextLines(10,  136, 0x90, sc.work_text, CREATED_OPENED_MODIFIED, 20);
275
		WriteTextLines(10,  136, 0x90, sc.work_text, CREATED_OPENED_MODIFIED, 20);
276
		DrawDate(120, 136, sc.work_text, #file_info_general.datecreate);
276
		DrawDate(120, 136, sc.work_text, #file_info_general.datecreate);
277
		DrawDate(120, 156, sc.work_text, #file_info_general.datelastaccess);
277
		DrawDate(120, 156, sc.work_text, #file_info_general.datelastaccess);
278
		DrawDate(120, 176, sc.work_text, #file_info_general.datelastedit);			
278
		DrawDate(120, 176, sc.work_text, #file_info_general.datelastedit);			
279
	}
279
	}
280
 
280
 
281
	DrawFrame(10, y.set(pform.cheight - 143), -10*2 + pform.cwidth - 2, 92, FLAGS);
281
	DrawFrame(10, y.set(pform.cheight - 143), -10*2 + pform.cwidth - 2, 92, FLAGS);
282
	ch_read_only.draw(24, y.inc(18));
282
	ch_read_only.draw(24, y.inc(18));
283
	ch_hidden.draw(24, y.inc(24));
283
	ch_hidden.draw(24, y.inc(24));
284
	ch_system.draw(24, y.inc(24));
284
	ch_system.draw(24, y.inc(24));
285
	if (apply_question_active) ShowConfirmQuestionPopin();
285
	if (apply_question_active) ShowConfirmQuestionPopin();
286
}
286
}
287
 
287
 
288
void PropertiesDrawIcon(dword file_path, extension)
288
void PropertiesDrawIcon(dword file_path, extension)
289
{
289
{
290
	int icon_n = ini_icons.get(file_path, extension, 32);
290
	int icon_n = ini_icons.get(file_path, extension, 32);
291
	draw_icon_32(12, 22, sc.work, icon_n);
291
	draw_icon_32(12, 22, sc.work, icon_n);
292
}
292
}
293
 
293
 
294
void EventApplyProperties()
294
void EventApplyProperties()
295
{
295
{
296
	if (getSelectedCount()) || (itdir) {
296
	if (getSelectedCount()) || (itdir) {
297
		ShowConfirmQuestionPopin();
297
		ShowConfirmQuestionPopin();
298
	} else {
298
	} else {
299
		SetProperties(SET_PROPERTIES_SINGLE_FILE);
299
		SetProperties(SET_PROPERTIES_SINGLE_FILE);
300
	}
300
	}
301
}
301
}