]> git.saurik.com Git - wxWidgets.git/blob - src/common/filtfind.cpp
applying patch, fixes #10523
[wxWidgets.git] / src / common / filtfind.cpp
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: src/common/filtfind.cpp
3 // Purpose: Streams for filter formats
4 // Author: Mike Wetherell
5 // RCS-ID: $Id$
6 // Copyright: (c) Mike Wetherell
7 // Licence: wxWindows licence
8 /////////////////////////////////////////////////////////////////////////////
9
10 // For compilers that support precompilation, includes "wx.h".
11 #include "wx/wxprec.h"
12
13 #ifdef __BORLANDC__
14 #pragma hdrstop
15 #endif
16
17 #if wxUSE_STREAMS
18
19 #include "wx/stream.h"
20
21 // These functions are in a separate file so that statically linked apps
22 // that do not call them to search for filter handlers will only link in
23 // the filter classes they use.
24
25 const wxFilterClassFactory *
26 wxFilterClassFactory::Find(const wxString& protocol, wxStreamProtocolType type)
27 {
28 for (const wxFilterClassFactory *f = GetFirst(); f; f = f->GetNext())
29 if (f->CanHandle(protocol, type))
30 return f;
31
32 return NULL;
33 }
34
35 // static
36 const wxFilterClassFactory *wxFilterClassFactory::GetFirst()
37 {
38 if (!sm_first)
39 wxUseFilterClasses();
40 return sm_first;
41 }
42
43 #endif // wxUSE_STREAMS