Add wxFileSystemHandler for "data" scheme

This notably allows embedding images directly in HTML.

Closes #24138.
This commit is contained in:
Viachaslau Lisouski 2023-12-15 09:07:39 +01:00 committed by Vadim Zeitlin
parent 68eaff5c02
commit ca405352e0
14 changed files with 306 additions and 1 deletions

View file

@ -580,6 +580,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
src/common/secretstore.cpp
src/common/lzmastream.cpp
src/common/uilocale.cpp
src/common/fs_data.cpp
</set>
<set var="BASE_AND_GUI_CMN_SRC" hints="files">
src/common/event.cpp
@ -755,6 +756,7 @@ IMPORTANT: please read docs/tech/tn0016.txt before modifying this file!
wx/lzmastream.h
wx/localedefs.h
wx/uilocale.h
wx/fs_data.h
</set>

View file

@ -492,6 +492,7 @@ set(BASE_CMN_SRC
src/generic/fswatcherg.cpp
src/common/lzmastream.cpp
src/common/uilocale.cpp
src/common/fs_data.cpp
)
set(BASE_AND_GUI_CMN_SRC
@ -669,6 +670,7 @@ set(BASE_CMN_HDR
wx/lzmastream.h
wx/localedefs.h
wx/uilocale.h
wx/fs_data.h
)
set(NET_UNIX_SRC

View file

@ -455,6 +455,7 @@ BASE_CMN_SRC =
src/common/filtfind.cpp
src/common/fmapbase.cpp
src/common/fs_arc.cpp
src/common/fs_data.cpp
src/common/fs_filter.cpp
src/common/hash.cpp
src/common/hashmap.cpp
@ -571,6 +572,7 @@ BASE_CMN_HDR =
wx/fontenc.h
wx/fontmap.h
wx/fs_arc.h
wx/fs_data.h
wx/fs_filter.h
wx/fs_mem.h
wx/fs_zip.h

View file

@ -498,6 +498,7 @@ MONODLL_OBJECTS = \
$(OBJS)\monodll_common_secretstore.o \
$(OBJS)\monodll_lzmastream.o \
$(OBJS)\monodll_common_uilocale.o \
$(OBJS)\monodll_fs_data.o \
$(OBJS)\monodll_basemsw.o \
$(OBJS)\monodll_crashrpt.o \
$(OBJS)\monodll_debughlp.o \
@ -659,6 +660,7 @@ MONOLIB_OBJECTS = \
$(OBJS)\monolib_common_secretstore.o \
$(OBJS)\monolib_lzmastream.o \
$(OBJS)\monolib_common_uilocale.o \
$(OBJS)\monolib_fs_data.o \
$(OBJS)\monolib_basemsw.o \
$(OBJS)\monolib_crashrpt.o \
$(OBJS)\monolib_debughlp.o \
@ -808,6 +810,7 @@ BASEDLL_OBJECTS = \
$(OBJS)\basedll_common_secretstore.o \
$(OBJS)\basedll_lzmastream.o \
$(OBJS)\basedll_common_uilocale.o \
$(OBJS)\basedll_fs_data.o \
$(OBJS)\basedll_basemsw.o \
$(OBJS)\basedll_crashrpt.o \
$(OBJS)\basedll_debughlp.o \
@ -938,6 +941,7 @@ BASELIB_OBJECTS = \
$(OBJS)\baselib_common_secretstore.o \
$(OBJS)\baselib_lzmastream.o \
$(OBJS)\baselib_common_uilocale.o \
$(OBJS)\baselib_fs_data.o \
$(OBJS)\baselib_basemsw.o \
$(OBJS)\baselib_crashrpt.o \
$(OBJS)\baselib_debughlp.o \
@ -7235,6 +7239,9 @@ $(OBJS)\monodll_lzmastream.o: ../../src/common/lzmastream.cpp
$(OBJS)\monodll_common_uilocale.o: ../../src/common/uilocale.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monodll_fs_data.o: ../../src/common/fs_data.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monodll_basemsw.o: ../../src/msw/basemsw.cpp
$(CXX) -c -o $@ $(MONODLL_CXXFLAGS) $(CPPDEPS) $<
@ -9826,6 +9833,9 @@ $(OBJS)\monolib_lzmastream.o: ../../src/common/lzmastream.cpp
$(OBJS)\monolib_common_uilocale.o: ../../src/common/uilocale.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monolib_fs_data.o: ../../src/common/fs_data.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\monolib_basemsw.o: ../../src/msw/basemsw.cpp
$(CXX) -c -o $@ $(MONOLIB_CXXFLAGS) $(CPPDEPS) $<
@ -12417,6 +12427,9 @@ $(OBJS)\basedll_lzmastream.o: ../../src/common/lzmastream.cpp
$(OBJS)\basedll_common_uilocale.o: ../../src/common/uilocale.cpp
$(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\basedll_fs_data.o: ../../src/common/fs_data.cpp
$(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\basedll_basemsw.o: ../../src/msw/basemsw.cpp
$(CXX) -c -o $@ $(BASEDLL_CXXFLAGS) $(CPPDEPS) $<
@ -12759,6 +12772,9 @@ $(OBJS)\baselib_lzmastream.o: ../../src/common/lzmastream.cpp
$(OBJS)\baselib_common_uilocale.o: ../../src/common/uilocale.cpp
$(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\baselib_fs_data.o: ../../src/common/fs_data.cpp
$(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<
$(OBJS)\baselib_basemsw.o: ../../src/msw/basemsw.cpp
$(CXX) -c -o $@ $(BASELIB_CXXFLAGS) $(CPPDEPS) $<

View file

@ -534,6 +534,7 @@ MONODLL_OBJECTS = \
$(OBJS)\monodll_common_secretstore.obj \
$(OBJS)\monodll_lzmastream.obj \
$(OBJS)\monodll_common_uilocale.obj \
$(OBJS)\monodll_fs_data.obj \
$(OBJS)\monodll_basemsw.obj \
$(OBJS)\monodll_crashrpt.obj \
$(OBJS)\monodll_debughlp.obj \
@ -704,6 +705,7 @@ MONOLIB_OBJECTS = \
$(OBJS)\monolib_common_secretstore.obj \
$(OBJS)\monolib_lzmastream.obj \
$(OBJS)\monolib_common_uilocale.obj \
$(OBJS)\monolib_fs_data.obj \
$(OBJS)\monolib_basemsw.obj \
$(OBJS)\monolib_crashrpt.obj \
$(OBJS)\monolib_debughlp.obj \
@ -862,6 +864,7 @@ BASEDLL_OBJECTS = \
$(OBJS)\basedll_common_secretstore.obj \
$(OBJS)\basedll_lzmastream.obj \
$(OBJS)\basedll_common_uilocale.obj \
$(OBJS)\basedll_fs_data.obj \
$(OBJS)\basedll_basemsw.obj \
$(OBJS)\basedll_crashrpt.obj \
$(OBJS)\basedll_debughlp.obj \
@ -1002,6 +1005,7 @@ BASELIB_OBJECTS = \
$(OBJS)\baselib_common_secretstore.obj \
$(OBJS)\baselib_lzmastream.obj \
$(OBJS)\baselib_common_uilocale.obj \
$(OBJS)\baselib_fs_data.obj \
$(OBJS)\baselib_basemsw.obj \
$(OBJS)\baselib_crashrpt.obj \
$(OBJS)\baselib_debughlp.obj \
@ -7692,6 +7696,9 @@ $(OBJS)\monodll_lzmastream.obj: ..\..\src\common\lzmastream.cpp
$(OBJS)\monodll_common_uilocale.obj: ..\..\src\common\uilocale.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\common\uilocale.cpp
$(OBJS)\monodll_fs_data.obj: ..\..\src\common\fs_data.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\common\fs_data.cpp
$(OBJS)\monodll_basemsw.obj: ..\..\src\msw\basemsw.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONODLL_CXXFLAGS) ..\..\src\msw\basemsw.cpp
@ -10283,6 +10290,9 @@ $(OBJS)\monolib_lzmastream.obj: ..\..\src\common\lzmastream.cpp
$(OBJS)\monolib_common_uilocale.obj: ..\..\src\common\uilocale.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\uilocale.cpp
$(OBJS)\monolib_fs_data.obj: ..\..\src\common\fs_data.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\common\fs_data.cpp
$(OBJS)\monolib_basemsw.obj: ..\..\src\msw\basemsw.cpp
$(CXX) /c /nologo /TP /Fo$@ $(MONOLIB_CXXFLAGS) ..\..\src\msw\basemsw.cpp
@ -12874,6 +12884,9 @@ $(OBJS)\basedll_lzmastream.obj: ..\..\src\common\lzmastream.cpp
$(OBJS)\basedll_common_uilocale.obj: ..\..\src\common\uilocale.cpp
$(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) ..\..\src\common\uilocale.cpp
$(OBJS)\basedll_fs_data.obj: ..\..\src\common\fs_data.cpp
$(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) ..\..\src\common\fs_data.cpp
$(OBJS)\basedll_basemsw.obj: ..\..\src\msw\basemsw.cpp
$(CXX) /c /nologo /TP /Fo$@ $(BASEDLL_CXXFLAGS) ..\..\src\msw\basemsw.cpp
@ -13216,6 +13229,9 @@ $(OBJS)\baselib_lzmastream.obj: ..\..\src\common\lzmastream.cpp
$(OBJS)\baselib_common_uilocale.obj: ..\..\src\common\uilocale.cpp
$(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) ..\..\src\common\uilocale.cpp
$(OBJS)\baselib_fs_data.obj: ..\..\src\common\fs_data.cpp
$(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) ..\..\src\common\fs_data.cpp
$(OBJS)\baselib_basemsw.obj: ..\..\src\msw\basemsw.cpp
$(CXX) /c /nologo /TP /Fo$@ $(BASELIB_CXXFLAGS) ..\..\src\msw\basemsw.cpp

View file

@ -622,6 +622,7 @@
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(IntDir)common_%(Filename).obj</ObjectFileName>
<ObjectFileName Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(IntDir)common_%(Filename).obj</ObjectFileName>
</ClCompile>
<ClCompile Include="..\..\src\common\fs_data.cpp" />
</ItemGroup>
<ItemGroup>
<ResourceCompile Include="..\..\src\msw\version.rc">
@ -841,6 +842,7 @@
<ClInclude Include="..\..\include\wx\lzmastream.h" />
<ClInclude Include="..\..\include\wx\localedefs.h" />
<ClInclude Include="..\..\include\wx\uilocale.h" />
<ClInclude Include="..\..\include\wx\fs_data.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">

View file

@ -123,6 +123,9 @@
<ClCompile Include="..\..\src\common\fs_arc.cpp">
<Filter>Common Sources</Filter>
</ClCompile>
<ClCompile Include="..\..\src\common\fs_data.cpp">
<Filter>Common Sources</Filter>
</ClCompile>
<ClCompile Include="..\..\src\common\fs_filter.cpp">
<Filter>Common Sources</Filter>
</ClCompile>
@ -535,6 +538,9 @@
<ClInclude Include="..\..\include\wx\fs_arc.h">
<Filter>Common Headers</Filter>
</ClInclude>
<ClInclude Include="..\..\include\wx\fs_data.h">
<Filter>Common Headers</Filter>
</ClInclude>
<ClInclude Include="..\..\include\wx\fs_filter.h">
<Filter>Common Headers</Filter>
</ClInclude>