]> git.saurik.com Git - wxWidgets.git/blob - wxPython/src/gtk/cmndlgs.py
Changes needed to get upto date with the latest wx CVS
[wxWidgets.git] / wxPython / src / gtk / cmndlgs.py
1 # This file was created automatically by SWIG.
2 import cmndlgsc
3
4 from misc import *
5
6 from gdi import *
7
8 from fonts import *
9
10 from windows import *
11
12 from clip_dnd import *
13
14 from events import *
15
16 from frames import *
17
18 from stattool import *
19
20 from controls import *
21 import wx
22
23
24 def EVT_COMMAND_FIND(win, id, func):
25 win.Connect(id, -1, wxEVT_COMMAND_FIND, func)
26
27 def EVT_COMMAND_FIND_NEXT(win, id, func):
28 win.Connect(id, -1, wxEVT_COMMAND_FIND_NEXT, func)
29
30 def EVT_COMMAND_FIND_REPLACE(win, id, func):
31 win.Connect(id, -1, wxEVT_COMMAND_FIND_REPLACE, func)
32
33 def EVT_COMMAND_FIND_REPLACE_ALL(win, id, func):
34 win.Connect(id, -1, wxEVT_COMMAND_FIND_REPLACE_ALL, func)
35
36 def EVT_COMMAND_FIND_CLOSE(win, id, func):
37 win.Connect(id, -1, wxEVT_COMMAND_FIND_CLOSE, func)
38
39
40 class wxColourDataPtr(wxObjectPtr):
41 def __init__(self,this):
42 self.this = this
43 self.thisown = 0
44 def __del__(self, delfunc=cmndlgsc.delete_wxColourData):
45 if self.thisown == 1:
46 try:
47 delfunc(self)
48 except:
49 pass
50 def GetChooseFull(self, *_args, **_kwargs):
51 val = cmndlgsc.wxColourData_GetChooseFull(self, *_args, **_kwargs)
52 return val
53 def GetColour(self, *_args, **_kwargs):
54 val = cmndlgsc.wxColourData_GetColour(self, *_args, **_kwargs)
55 if val: val = wxColourPtr(val) ; val.thisown = 1
56 return val
57 def GetCustomColour(self, *_args, **_kwargs):
58 val = cmndlgsc.wxColourData_GetCustomColour(self, *_args, **_kwargs)
59 if val: val = wxColourPtr(val) ; val.thisown = 1
60 return val
61 def SetChooseFull(self, *_args, **_kwargs):
62 val = cmndlgsc.wxColourData_SetChooseFull(self, *_args, **_kwargs)
63 return val
64 def SetColour(self, *_args, **_kwargs):
65 val = cmndlgsc.wxColourData_SetColour(self, *_args, **_kwargs)
66 return val
67 def SetCustomColour(self, *_args, **_kwargs):
68 val = cmndlgsc.wxColourData_SetCustomColour(self, *_args, **_kwargs)
69 return val
70 def __repr__(self):
71 return "<%s.%s instance; proxy of C++ wxColourData instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
72 class wxColourData(wxColourDataPtr):
73 def __init__(self,*_args,**_kwargs):
74 self.this = cmndlgsc.new_wxColourData(*_args,**_kwargs)
75 self.thisown = 1
76
77
78
79
80 class wxColourDialogPtr(wxDialogPtr):
81 def __init__(self,this):
82 self.this = this
83 self.thisown = 0
84 def GetColourData(self, *_args, **_kwargs):
85 val = cmndlgsc.wxColourDialog_GetColourData(self, *_args, **_kwargs)
86 if val: val = wxColourDataPtr(val)
87 return val
88 def ShowModal(self, *_args, **_kwargs):
89 val = cmndlgsc.wxColourDialog_ShowModal(self, *_args, **_kwargs)
90 return val
91 def __repr__(self):
92 return "<%s.%s instance; proxy of C++ wxColourDialog instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
93 class wxColourDialog(wxColourDialogPtr):
94 def __init__(self,*_args,**_kwargs):
95 self.this = cmndlgsc.new_wxColourDialog(*_args,**_kwargs)
96 self.thisown = 1
97 self._setOORInfo(self)
98
99
100
101
102 class wxDirDialogPtr(wxDialogPtr):
103 def __init__(self,this):
104 self.this = this
105 self.thisown = 0
106 def GetPath(self, *_args, **_kwargs):
107 val = cmndlgsc.wxDirDialog_GetPath(self, *_args, **_kwargs)
108 return val
109 def GetMessage(self, *_args, **_kwargs):
110 val = cmndlgsc.wxDirDialog_GetMessage(self, *_args, **_kwargs)
111 return val
112 def GetStyle(self, *_args, **_kwargs):
113 val = cmndlgsc.wxDirDialog_GetStyle(self, *_args, **_kwargs)
114 return val
115 def SetMessage(self, *_args, **_kwargs):
116 val = cmndlgsc.wxDirDialog_SetMessage(self, *_args, **_kwargs)
117 return val
118 def SetPath(self, *_args, **_kwargs):
119 val = cmndlgsc.wxDirDialog_SetPath(self, *_args, **_kwargs)
120 return val
121 def ShowModal(self, *_args, **_kwargs):
122 val = cmndlgsc.wxDirDialog_ShowModal(self, *_args, **_kwargs)
123 return val
124 def __repr__(self):
125 return "<%s.%s instance; proxy of C++ wxDirDialog instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
126 class wxDirDialog(wxDirDialogPtr):
127 def __init__(self,*_args,**_kwargs):
128 self.this = cmndlgsc.new_wxDirDialog(*_args,**_kwargs)
129 self.thisown = 1
130 self._setOORInfo(self)
131
132
133
134
135 class wxFileDialogPtr(wxDialogPtr):
136 def __init__(self,this):
137 self.this = this
138 self.thisown = 0
139 def SetMessage(self, *_args, **_kwargs):
140 val = cmndlgsc.wxFileDialog_SetMessage(self, *_args, **_kwargs)
141 return val
142 def SetPath(self, *_args, **_kwargs):
143 val = cmndlgsc.wxFileDialog_SetPath(self, *_args, **_kwargs)
144 return val
145 def SetDirectory(self, *_args, **_kwargs):
146 val = cmndlgsc.wxFileDialog_SetDirectory(self, *_args, **_kwargs)
147 return val
148 def SetFilename(self, *_args, **_kwargs):
149 val = cmndlgsc.wxFileDialog_SetFilename(self, *_args, **_kwargs)
150 return val
151 def SetWildcard(self, *_args, **_kwargs):
152 val = cmndlgsc.wxFileDialog_SetWildcard(self, *_args, **_kwargs)
153 return val
154 def SetStyle(self, *_args, **_kwargs):
155 val = cmndlgsc.wxFileDialog_SetStyle(self, *_args, **_kwargs)
156 return val
157 def SetFilterIndex(self, *_args, **_kwargs):
158 val = cmndlgsc.wxFileDialog_SetFilterIndex(self, *_args, **_kwargs)
159 return val
160 def GetMessage(self, *_args, **_kwargs):
161 val = cmndlgsc.wxFileDialog_GetMessage(self, *_args, **_kwargs)
162 return val
163 def GetPath(self, *_args, **_kwargs):
164 val = cmndlgsc.wxFileDialog_GetPath(self, *_args, **_kwargs)
165 return val
166 def GetDirectory(self, *_args, **_kwargs):
167 val = cmndlgsc.wxFileDialog_GetDirectory(self, *_args, **_kwargs)
168 return val
169 def GetFilename(self, *_args, **_kwargs):
170 val = cmndlgsc.wxFileDialog_GetFilename(self, *_args, **_kwargs)
171 return val
172 def GetWildcard(self, *_args, **_kwargs):
173 val = cmndlgsc.wxFileDialog_GetWildcard(self, *_args, **_kwargs)
174 return val
175 def GetStyle(self, *_args, **_kwargs):
176 val = cmndlgsc.wxFileDialog_GetStyle(self, *_args, **_kwargs)
177 return val
178 def GetFilterIndex(self, *_args, **_kwargs):
179 val = cmndlgsc.wxFileDialog_GetFilterIndex(self, *_args, **_kwargs)
180 return val
181 def GetFilenames(self, *_args, **_kwargs):
182 val = cmndlgsc.wxFileDialog_GetFilenames(self, *_args, **_kwargs)
183 return val
184 def GetPaths(self, *_args, **_kwargs):
185 val = cmndlgsc.wxFileDialog_GetPaths(self, *_args, **_kwargs)
186 return val
187 def __repr__(self):
188 return "<%s.%s instance; proxy of C++ wxFileDialog instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
189 class wxFileDialog(wxFileDialogPtr):
190 def __init__(self,*_args,**_kwargs):
191 self.this = cmndlgsc.new_wxFileDialog(*_args,**_kwargs)
192 self.thisown = 1
193 self._setOORInfo(self)
194
195
196
197
198 class wxMultiChoiceDialogPtr(wxDialogPtr):
199 def __init__(self,this):
200 self.this = this
201 self.thisown = 0
202 def SetSelections(self, *_args, **_kwargs):
203 val = cmndlgsc.wxMultiChoiceDialog_SetSelections(self, *_args, **_kwargs)
204 return val
205 def GetSelections(self, *_args, **_kwargs):
206 val = cmndlgsc.wxMultiChoiceDialog_GetSelections(self, *_args, **_kwargs)
207 return val
208 def __repr__(self):
209 return "<%s.%s instance; proxy of C++ wxMultiChoiceDialog instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
210 class wxMultiChoiceDialog(wxMultiChoiceDialogPtr):
211 def __init__(self,*_args,**_kwargs):
212 self.this = cmndlgsc.new_wxMultiChoiceDialog(*_args,**_kwargs)
213 self.thisown = 1
214 self._setOORInfo(self)
215
216
217
218
219 class wxSingleChoiceDialogPtr(wxDialogPtr):
220 def __init__(self,this):
221 self.this = this
222 self.thisown = 0
223 def GetSelection(self, *_args, **_kwargs):
224 val = cmndlgsc.wxSingleChoiceDialog_GetSelection(self, *_args, **_kwargs)
225 return val
226 def GetStringSelection(self, *_args, **_kwargs):
227 val = cmndlgsc.wxSingleChoiceDialog_GetStringSelection(self, *_args, **_kwargs)
228 return val
229 def SetSelection(self, *_args, **_kwargs):
230 val = cmndlgsc.wxSingleChoiceDialog_SetSelection(self, *_args, **_kwargs)
231 return val
232 def ShowModal(self, *_args, **_kwargs):
233 val = cmndlgsc.wxSingleChoiceDialog_ShowModal(self, *_args, **_kwargs)
234 return val
235 def __repr__(self):
236 return "<%s.%s instance; proxy of C++ wxSingleChoiceDialog instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
237 class wxSingleChoiceDialog(wxSingleChoiceDialogPtr):
238 def __init__(self,*_args,**_kwargs):
239 self.this = cmndlgsc.new_wxSingleChoiceDialog(*_args,**_kwargs)
240 self.thisown = 1
241 self._setOORInfo(self)
242
243
244
245
246 class wxTextEntryDialogPtr(wxDialogPtr):
247 def __init__(self,this):
248 self.this = this
249 self.thisown = 0
250 def GetValue(self, *_args, **_kwargs):
251 val = cmndlgsc.wxTextEntryDialog_GetValue(self, *_args, **_kwargs)
252 return val
253 def SetValue(self, *_args, **_kwargs):
254 val = cmndlgsc.wxTextEntryDialog_SetValue(self, *_args, **_kwargs)
255 return val
256 def ShowModal(self, *_args, **_kwargs):
257 val = cmndlgsc.wxTextEntryDialog_ShowModal(self, *_args, **_kwargs)
258 return val
259 def __repr__(self):
260 return "<%s.%s instance; proxy of C++ wxTextEntryDialog instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
261 class wxTextEntryDialog(wxTextEntryDialogPtr):
262 def __init__(self,*_args,**_kwargs):
263 self.this = cmndlgsc.new_wxTextEntryDialog(*_args,**_kwargs)
264 self.thisown = 1
265 self._setOORInfo(self)
266
267
268
269
270 class wxFontDataPtr(wxObjectPtr):
271 def __init__(self,this):
272 self.this = this
273 self.thisown = 0
274 def __del__(self, delfunc=cmndlgsc.delete_wxFontData):
275 if self.thisown == 1:
276 try:
277 delfunc(self)
278 except:
279 pass
280 def EnableEffects(self, *_args, **_kwargs):
281 val = cmndlgsc.wxFontData_EnableEffects(self, *_args, **_kwargs)
282 return val
283 def GetAllowSymbols(self, *_args, **_kwargs):
284 val = cmndlgsc.wxFontData_GetAllowSymbols(self, *_args, **_kwargs)
285 return val
286 def GetColour(self, *_args, **_kwargs):
287 val = cmndlgsc.wxFontData_GetColour(self, *_args, **_kwargs)
288 if val: val = wxColourPtr(val) ; val.thisown = 1
289 return val
290 def GetChosenFont(self, *_args, **_kwargs):
291 val = cmndlgsc.wxFontData_GetChosenFont(self, *_args, **_kwargs)
292 if val: val = wxFontPtr(val) ; val.thisown = 1
293 return val
294 def GetEnableEffects(self, *_args, **_kwargs):
295 val = cmndlgsc.wxFontData_GetEnableEffects(self, *_args, **_kwargs)
296 return val
297 def GetInitialFont(self, *_args, **_kwargs):
298 val = cmndlgsc.wxFontData_GetInitialFont(self, *_args, **_kwargs)
299 if val: val = wxFontPtr(val) ; val.thisown = 1
300 return val
301 def GetShowHelp(self, *_args, **_kwargs):
302 val = cmndlgsc.wxFontData_GetShowHelp(self, *_args, **_kwargs)
303 return val
304 def SetAllowSymbols(self, *_args, **_kwargs):
305 val = cmndlgsc.wxFontData_SetAllowSymbols(self, *_args, **_kwargs)
306 return val
307 def SetChosenFont(self, *_args, **_kwargs):
308 val = cmndlgsc.wxFontData_SetChosenFont(self, *_args, **_kwargs)
309 return val
310 def SetColour(self, *_args, **_kwargs):
311 val = cmndlgsc.wxFontData_SetColour(self, *_args, **_kwargs)
312 return val
313 def SetInitialFont(self, *_args, **_kwargs):
314 val = cmndlgsc.wxFontData_SetInitialFont(self, *_args, **_kwargs)
315 return val
316 def SetRange(self, *_args, **_kwargs):
317 val = cmndlgsc.wxFontData_SetRange(self, *_args, **_kwargs)
318 return val
319 def SetShowHelp(self, *_args, **_kwargs):
320 val = cmndlgsc.wxFontData_SetShowHelp(self, *_args, **_kwargs)
321 return val
322 def __repr__(self):
323 return "<%s.%s instance; proxy of C++ wxFontData instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
324 class wxFontData(wxFontDataPtr):
325 def __init__(self,*_args,**_kwargs):
326 self.this = cmndlgsc.new_wxFontData(*_args,**_kwargs)
327 self.thisown = 1
328
329
330
331
332 class wxFontDialogPtr(wxDialogPtr):
333 def __init__(self,this):
334 self.this = this
335 self.thisown = 0
336 def GetFontData(self, *_args, **_kwargs):
337 val = cmndlgsc.wxFontDialog_GetFontData(self, *_args, **_kwargs)
338 if val: val = wxFontDataPtr(val)
339 return val
340 def ShowModal(self, *_args, **_kwargs):
341 val = cmndlgsc.wxFontDialog_ShowModal(self, *_args, **_kwargs)
342 return val
343 def __repr__(self):
344 return "<%s.%s instance; proxy of C++ wxFontDialog instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
345 class wxFontDialog(wxFontDialogPtr):
346 def __init__(self,*_args,**_kwargs):
347 self.this = cmndlgsc.new_wxFontDialog(*_args,**_kwargs)
348 self.thisown = 1
349 self._setOORInfo(self)
350
351
352
353
354 class wxMessageDialogPtr(wxDialogPtr):
355 def __init__(self,this):
356 self.this = this
357 self.thisown = 0
358 def ShowModal(self, *_args, **_kwargs):
359 val = cmndlgsc.wxMessageDialog_ShowModal(self, *_args, **_kwargs)
360 return val
361 def __repr__(self):
362 return "<%s.%s instance; proxy of C++ wxMessageDialog instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
363 class wxMessageDialog(wxMessageDialogPtr):
364 def __init__(self,*_args,**_kwargs):
365 self.this = cmndlgsc.new_wxMessageDialog(*_args,**_kwargs)
366 self.thisown = 1
367 self._setOORInfo(self)
368
369
370
371
372 class wxProgressDialogPtr(wxFramePtr):
373 def __init__(self,this):
374 self.this = this
375 self.thisown = 0
376 def Update(self, *_args, **_kwargs):
377 val = cmndlgsc.wxProgressDialog_Update(self, *_args, **_kwargs)
378 return val
379 def Resume(self, *_args, **_kwargs):
380 val = cmndlgsc.wxProgressDialog_Resume(self, *_args, **_kwargs)
381 return val
382 def __repr__(self):
383 return "<%s.%s instance; proxy of C++ wxProgressDialog instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
384 class wxProgressDialog(wxProgressDialogPtr):
385 def __init__(self,*_args,**_kwargs):
386 self.this = cmndlgsc.new_wxProgressDialog(*_args,**_kwargs)
387 self.thisown = 1
388 self._setOORInfo(self)
389
390
391
392
393 class wxFindDialogEventPtr(wxCommandEventPtr):
394 def __init__(self,this):
395 self.this = this
396 self.thisown = 0
397 def GetFlags(self, *_args, **_kwargs):
398 val = cmndlgsc.wxFindDialogEvent_GetFlags(self, *_args, **_kwargs)
399 return val
400 def GetFindString(self, *_args, **_kwargs):
401 val = cmndlgsc.wxFindDialogEvent_GetFindString(self, *_args, **_kwargs)
402 return val
403 def GetReplaceString(self, *_args, **_kwargs):
404 val = cmndlgsc.wxFindDialogEvent_GetReplaceString(self, *_args, **_kwargs)
405 return val
406 def GetDialog(self, *_args, **_kwargs):
407 val = cmndlgsc.wxFindDialogEvent_GetDialog(self, *_args, **_kwargs)
408 if val: val = wxFindReplaceDialogPtr(val)
409 return val
410 def SetFlags(self, *_args, **_kwargs):
411 val = cmndlgsc.wxFindDialogEvent_SetFlags(self, *_args, **_kwargs)
412 return val
413 def SetFindString(self, *_args, **_kwargs):
414 val = cmndlgsc.wxFindDialogEvent_SetFindString(self, *_args, **_kwargs)
415 return val
416 def SetReplaceString(self, *_args, **_kwargs):
417 val = cmndlgsc.wxFindDialogEvent_SetReplaceString(self, *_args, **_kwargs)
418 return val
419 def __repr__(self):
420 return "<%s.%s instance; proxy of C++ wxFindDialogEvent instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
421 class wxFindDialogEvent(wxFindDialogEventPtr):
422 def __init__(self,*_args,**_kwargs):
423 self.this = cmndlgsc.new_wxFindDialogEvent(*_args,**_kwargs)
424 self.thisown = 1
425
426
427
428
429 class wxFindReplaceDataPtr(wxObjectPtr):
430 def __init__(self,this):
431 self.this = this
432 self.thisown = 0
433 def __del__(self, delfunc=cmndlgsc.delete_wxFindReplaceData):
434 if self.thisown == 1:
435 try:
436 delfunc(self)
437 except:
438 pass
439 def GetFindString(self, *_args, **_kwargs):
440 val = cmndlgsc.wxFindReplaceData_GetFindString(self, *_args, **_kwargs)
441 return val
442 def GetReplaceString(self, *_args, **_kwargs):
443 val = cmndlgsc.wxFindReplaceData_GetReplaceString(self, *_args, **_kwargs)
444 return val
445 def GetFlags(self, *_args, **_kwargs):
446 val = cmndlgsc.wxFindReplaceData_GetFlags(self, *_args, **_kwargs)
447 return val
448 def SetFlags(self, *_args, **_kwargs):
449 val = cmndlgsc.wxFindReplaceData_SetFlags(self, *_args, **_kwargs)
450 return val
451 def SetFindString(self, *_args, **_kwargs):
452 val = cmndlgsc.wxFindReplaceData_SetFindString(self, *_args, **_kwargs)
453 return val
454 def SetReplaceString(self, *_args, **_kwargs):
455 val = cmndlgsc.wxFindReplaceData_SetReplaceString(self, *_args, **_kwargs)
456 return val
457 def __repr__(self):
458 return "<%s.%s instance; proxy of C++ wxFindReplaceData instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
459 class wxFindReplaceData(wxFindReplaceDataPtr):
460 def __init__(self,*_args,**_kwargs):
461 self.this = cmndlgsc.new_wxFindReplaceData(*_args,**_kwargs)
462 self.thisown = 1
463
464
465
466
467 class wxFindReplaceDialogPtr(wxDialogPtr):
468 def __init__(self,this):
469 self.this = this
470 self.thisown = 0
471 def Create(self, *_args, **_kwargs):
472 val = cmndlgsc.wxFindReplaceDialog_Create(self, *_args, **_kwargs)
473 return val
474 def GetData(self, *_args, **_kwargs):
475 val = cmndlgsc.wxFindReplaceDialog_GetData(self, *_args, **_kwargs)
476 if val: val = wxFindReplaceDataPtr(val)
477 return val
478 def SetData(self, *_args, **_kwargs):
479 val = cmndlgsc.wxFindReplaceDialog_SetData(self, *_args, **_kwargs)
480 return val
481 def __repr__(self):
482 return "<%s.%s instance; proxy of C++ wxFindReplaceDialog instance at %s>" % (self.__class__.__module__, self.__class__.__name__, self.this)
483 class wxFindReplaceDialog(wxFindReplaceDialogPtr):
484 def __init__(self,*_args,**_kwargs):
485 self.this = cmndlgsc.new_wxFindReplaceDialog(*_args,**_kwargs)
486 self.thisown = 1
487 self._setOORInfo(self)
488
489
490
491 def wxPreFindReplaceDialog(*_args,**_kwargs):
492 val = wxFindReplaceDialogPtr(cmndlgsc.new_wxPreFindReplaceDialog(*_args,**_kwargs))
493 val.thisown = 1
494 val._setOORInfo(val)
495 return val
496
497
498
499
500 #-------------- FUNCTION WRAPPERS ------------------
501
502
503
504 #-------------- VARIABLE WRAPPERS ------------------
505
506 wxCHOICEDLG_STYLE = cmndlgsc.wxCHOICEDLG_STYLE
507 wxFR_DOWN = cmndlgsc.wxFR_DOWN
508 wxFR_WHOLEWORD = cmndlgsc.wxFR_WHOLEWORD
509 wxFR_MATCHCASE = cmndlgsc.wxFR_MATCHCASE
510 wxFR_REPLACEDIALOG = cmndlgsc.wxFR_REPLACEDIALOG
511 wxFR_NOUPDOWN = cmndlgsc.wxFR_NOUPDOWN
512 wxFR_NOMATCHCASE = cmndlgsc.wxFR_NOMATCHCASE
513 wxFR_NOWHOLEWORD = cmndlgsc.wxFR_NOWHOLEWORD
514 wxEVT_COMMAND_FIND = cmndlgsc.wxEVT_COMMAND_FIND
515 wxEVT_COMMAND_FIND_NEXT = cmndlgsc.wxEVT_COMMAND_FIND_NEXT
516 wxEVT_COMMAND_FIND_REPLACE = cmndlgsc.wxEVT_COMMAND_FIND_REPLACE
517 wxEVT_COMMAND_FIND_REPLACE_ALL = cmndlgsc.wxEVT_COMMAND_FIND_REPLACE_ALL
518 wxEVT_COMMAND_FIND_CLOSE = cmndlgsc.wxEVT_COMMAND_FIND_CLOSE