├── .gitignore ├── Bin32 ├── Register32bit.bat └── UnRegister32bit.bat ├── Bin64 ├── Register64bit.bat └── UnRegister64bit.bat ├── Build.bat ├── Debug └── Preview Handlers │ └── PreviewHandler Host │ ├── PreviewHost.dpr │ ├── PreviewHost.dproj │ ├── PreviewHost.res │ ├── uHostPreview.pas │ ├── uMain.dfm │ └── uMain.pas ├── Docs ├── Examples │ ├── IT01234567890_FPA01.xml │ ├── IT01234567890_FPA02.xml │ ├── IT01234567890_FPA03.xml │ ├── IT01234567890_FPR01.xml │ ├── IT01234567890_FPR02.xml │ └── IT01234567890_FPR03.xml └── Templates │ ├── FoglioStileAssoSoftware.xsl │ ├── Foglio_di_stile_AssoSoftware_custom.xsl │ ├── Foglio_di_stile_AssoSoftware_customOld.xsl │ ├── Foglio_di_stile_fatturaPA_v1.2.2.xsl │ ├── Foglio_di_stile_fattura_ordinaria_ver1.2.2.xsl │ ├── Foglio_di_stile_fatturaordinaria_v1.2.1.xsl │ ├── Schema_del_file_xml_FatturaPA_v1.2.2.xsd │ ├── Template.svg │ ├── Template.xsl │ ├── Template_vuoto.svg │ ├── fatturapa_v1.2.1_de-it.xsl │ └── test.svg ├── Ext ├── AllPackagesGroup_D11.groupproj ├── AllPackagesGroup_D12.groupproj ├── External Projects.md ├── HTMLViewer │ ├── License.txt │ ├── ReadMe.txt │ ├── Source │ │ ├── AlphaBlendUn.pas │ │ ├── BegaHtmlPrintPreviewForm.pas │ │ ├── BegaMetaFilePrinter.pas │ │ ├── BegaPreview.dfm │ │ ├── BegaPreview.pas │ │ ├── BegaPreviewForm.dfm │ │ ├── BegaPreviewForm.pas │ │ ├── BegaPreviewPanel.pas │ │ ├── BegaScrollBox.pas │ │ ├── BegaZoom.pas │ │ ├── BuffConv.pas │ │ ├── BuffConvArrays.pas │ │ ├── DitherUnit.pas │ │ ├── FramBrwz.pas │ │ ├── FrameViewerReg.pas │ │ ├── GDIPL2A.pas │ │ ├── HSLUtils.pas │ │ ├── HTMLCompEdit.pas │ │ ├── HTMLGif2.pas │ │ ├── HTMLSubs.pas │ │ ├── HTMLUn2.pas │ │ ├── Html32.res │ │ ├── HtmlBuffer.pas │ │ ├── HtmlCaches.pas │ │ ├── HtmlFonts.pas │ │ ├── HtmlGlobals.pas │ │ ├── HtmlImages.pas │ │ ├── HtmlPrinter.pas │ │ ├── HtmlSymb.pas │ │ ├── Htmlsbs1.pas │ │ ├── MetaFilePrinter.pas │ │ ├── ReadHTML.pas │ │ ├── StylePars.pas │ │ ├── StyleTypes.pas │ │ ├── StyleUn.pas │ │ ├── URLSubs.pas │ │ ├── UrlConn.pas │ │ ├── ZoomAndHandCursor.RES │ │ ├── framview.pas │ │ ├── htmlcons.inc │ │ ├── htmlgif1.pas │ │ ├── htmlmisc.pas │ │ ├── htmlview.pas │ │ ├── msimg32.pas │ │ ├── unicodestringslcl.pas │ │ ├── vwPrint.pas │ │ └── widestringslcl.pas │ └── package │ │ ├── FRAMVIEW.DCR │ │ ├── FrameViewer11.dpk │ │ ├── FrameViewer11.dproj │ │ ├── FrameViewer11.res │ │ ├── FrameViewer12.dpk │ │ ├── FrameViewer12.dproj │ │ ├── FrameViewer12.res │ │ ├── HTMLVIEW.DCR │ │ ├── HTMLViewerPackages11.groupproj │ │ ├── HTMLViewerPackages12.groupproj │ │ ├── dclFrameViewer11.dpk │ │ ├── dclFrameViewer11.dproj │ │ ├── dclFrameViewer11.res │ │ ├── dclFrameViewer12.dpk │ │ ├── dclFrameViewer12.dproj │ │ └── dclFrameViewer12.res ├── SVGIconImageList │ ├── Image32 │ │ ├── ChangeLog.txt │ │ ├── LICENSE.txt │ │ ├── Readme.md │ │ └── source │ │ │ ├── Clipper.Core.pas │ │ │ ├── Clipper.Engine.pas │ │ │ ├── Clipper.Minkowski.pas │ │ │ ├── Clipper.Offset.pas │ │ │ ├── Clipper.RectClip.pas │ │ │ ├── Clipper.inc │ │ │ ├── Clipper.pas │ │ │ ├── Img32.CQ.pas │ │ │ ├── Img32.Clipper2.pas │ │ │ ├── Img32.Draw.pas │ │ │ ├── Img32.Extra.pas │ │ │ ├── Img32.FMX.pas │ │ │ ├── Img32.Fmt.BMP.pas │ │ │ ├── Img32.Fmt.GIF.pas │ │ │ ├── Img32.Fmt.JPG.pas │ │ │ ├── Img32.Fmt.PNG.pas │ │ │ ├── Img32.Fmt.QOI.pas │ │ │ ├── Img32.Fmt.SVG.pas │ │ │ ├── Img32.Layers.pas │ │ │ ├── Img32.Panels.dcr │ │ │ ├── Img32.Panels.pas │ │ │ ├── Img32.Resamplers.pas │ │ │ ├── Img32.SVG.Core.pas │ │ │ ├── Img32.SVG.HashConsts.inc │ │ │ ├── Img32.SVG.HtmlColorConsts.inc │ │ │ ├── Img32.SVG.HtmlHashConsts.inc │ │ │ ├── Img32.SVG.HtmlValues.inc │ │ │ ├── Img32.SVG.Path.pas │ │ │ ├── Img32.SVG.PathDesign.pas │ │ │ ├── Img32.SVG.Reader.pas │ │ │ ├── Img32.Storage.pas │ │ │ ├── Img32.Text.pas │ │ │ ├── Img32.Transform.pas │ │ │ ├── Img32.Vector.pas │ │ │ ├── Img32.Vectorizer.pas │ │ │ ├── Img32.inc │ │ │ └── Img32.pas │ ├── Packages │ │ ├── D11 │ │ │ ├── SVGIconImageList.dpk │ │ │ ├── SVGIconImageList.dproj │ │ │ ├── SVGIconImageListFMX.dpk │ │ │ ├── SVGIconImageListFMX.dproj │ │ │ ├── SVGIconImageListGroupPackages.groupproj │ │ │ ├── SVGIconImageListRestClient.dpk │ │ │ ├── SVGIconImageListRestClient.dproj │ │ │ ├── SVGImage32Package.dpk │ │ │ ├── SVGImage32Package.dproj │ │ │ ├── dclSVGIconImageList.dpk │ │ │ ├── dclSVGIconImageList.dproj │ │ │ ├── dclSVGIconImageListFMX.dpk │ │ │ └── dclSVGIconImageListFMX.dproj │ │ ├── D12 │ │ │ ├── SVGIconImageList.dpk │ │ │ ├── SVGIconImageList.dproj │ │ │ ├── SVGIconImageListFMX.dpk │ │ │ ├── SVGIconImageListFMX.dproj │ │ │ ├── SVGIconImageListGroupPackages.groupproj │ │ │ ├── SVGIconImageListRestClient.dpk │ │ │ ├── SVGIconImageListRestClient.dproj │ │ │ ├── SVGImage32Package.dpk │ │ │ ├── SVGImage32Package.dproj │ │ │ ├── dclSVGIconImageList.dpk │ │ │ ├── dclSVGIconImageList.dproj │ │ │ ├── dclSVGIconImageListFMX.dpk │ │ │ └── dclSVGIconImageListFMX.dproj │ │ ├── FMX.SVGIconImageListEditorUnit.fmx │ │ ├── FMX.SVGIconImageListEditorUnit.pas │ │ ├── FMX.SVGIconImageRegister.pas │ │ ├── FMX.SVGRESTClientFormUnit.fmx │ │ ├── FMX.SVGRESTClientFormUnit.pas │ │ ├── FMX.SVGTextPropertyEditorUnit.fmx │ │ ├── FMX.SVGTextPropertyEditorUnit.pas │ │ ├── GetItLogo.png │ │ ├── ListBoxItemStyleBook.style │ │ ├── SVGIconImageCollectionComponentIcon.png │ │ ├── SVGIconImageComponentIcon.png │ │ ├── SVGIconImageList.dcr │ │ ├── SVGIconImageListComponentIcon.png │ │ ├── SVGIconImageListEditorUnit.dfm │ │ ├── SVGIconImageListEditorUnit.pas │ │ ├── SVGIconImageListNew.dcr │ │ ├── SVGIconImageRegister.pas │ │ ├── SVGIconSetFormUnit.dfm │ │ ├── SVGIconSetFormUnit.pas │ │ ├── SVGIconVirtualImageListComponentIcon.png │ │ ├── SVGRESTClientFormUnit.dfm │ │ ├── SVGRESTClientFormUnit.pas │ │ ├── SVGTextPropertyEditorUnit.dfm │ │ ├── SVGTextPropertyEditorUnit.pas │ │ └── SvgIconImageListSplash.res │ └── Source │ │ ├── Browser.IconifyApi.pas │ │ ├── D2DSVGFactory.pas │ │ ├── FMX.Image32SVG.pas │ │ ├── FMX.ImageSVG.pas │ │ ├── FMX.ImageSkiaSVG.pas │ │ ├── FMX.SVGIconImage.pas │ │ ├── FMX.SVGIconImageList.pas │ │ ├── FMX.SVGIconsUtils.pas │ │ ├── Image32SVGFactory.pas │ │ ├── SVGIconImage.pas │ │ ├── SVGIconImageCollection.pas │ │ ├── SVGIconImageList.inc │ │ ├── SVGIconImageList.pas │ │ ├── SVGIconImageListBase.pas │ │ ├── SVGIconItems.pas │ │ ├── SVGIconUtils.pas │ │ ├── SVGIconVirtualImageList.pas │ │ ├── SVGInterfaces.pas │ │ ├── SVGMessaging.pas │ │ ├── SkiaSVGFactory.pas │ │ ├── Winapi.D2DMissing.pas │ │ ├── dlgExportPNG.dfm │ │ └── dlgExportPNG.pas ├── StyledComponents │ ├── packages │ │ ├── D11 │ │ │ ├── StyledComponents.dpk │ │ │ ├── StyledComponents.dproj │ │ │ ├── dclStyledComponents.dpk │ │ │ └── dclStyledComponents.dproj │ │ ├── D12 │ │ │ ├── StyledComponents.dpk │ │ │ ├── StyledComponents.dproj │ │ │ ├── dclStyledComponents.dpk │ │ │ └── dclStyledComponents.dproj │ │ ├── StyledAnimatedButton.dcr │ │ ├── StyledAnimatedTaskDialog.dcr │ │ ├── StyledAnimatedToolBar.dcr │ │ ├── StyledButton.dcr │ │ ├── StyledButtonGroup.dcr │ │ ├── StyledCategoryButtons.dcr │ │ ├── StyledComponentsSplash.res │ │ ├── StyledDbNavigator.dcr │ │ ├── StyledTaskDialog.dcr │ │ ├── StyledToolBar.dcr │ │ ├── Vcl.StyledAnimatedComponentsRegister.pas │ │ ├── Vcl.StyledAttributesFrameUnit.dfm │ │ ├── Vcl.StyledAttributesFrameUnit.pas │ │ ├── Vcl.StyledButtonCustomEditorUnit.dfm │ │ ├── Vcl.StyledButtonCustomEditorUnit.pas │ │ ├── Vcl.StyledButtonEditorUnit.dfm │ │ ├── Vcl.StyledButtonEditorUnit.pas │ │ └── Vcl.StyledComponentsRegister.pas │ └── source │ │ ├── Animations.RES │ │ ├── Animations.rc │ │ ├── BuildResFileOfAnimations.cmd │ │ ├── CommandLinkBMP.RES │ │ ├── CommandLinkPNG.RES │ │ ├── Skia.Vcl.StyledTaskDialogAnimatedUnit.dfm │ │ ├── Skia.Vcl.StyledTaskDialogAnimatedUnit.pas │ │ ├── StyledButtonsBMP.RES │ │ ├── StyledButtonsPNG.RES │ │ ├── StyledComponents.inc │ │ ├── StyledNavButtonsBMP.RES │ │ ├── StyledNavButtonsPNG.RES │ │ ├── Vcl.AngularButtonStyles.pas │ │ ├── Vcl.BootstrapButtonStyles.pas │ │ ├── Vcl.ButtonStylesAttributes.pas │ │ ├── Vcl.ColorButtonStyles.pas │ │ ├── Vcl.SkAnimatedImageHelper.pas │ │ ├── Vcl.StandardButtonStyles.pas │ │ ├── Vcl.StyledAnimatedButton.pas │ │ ├── Vcl.StyledAnimatedTaskDialog.pas │ │ ├── Vcl.StyledAnimatedToolbar.pas │ │ ├── Vcl.StyledButton.pas │ │ ├── Vcl.StyledButtonGroup.pas │ │ ├── Vcl.StyledCategoryButtons.pas │ │ ├── Vcl.StyledCmpMessages.pas │ │ ├── Vcl.StyledCmpStrUtils.pas │ │ ├── Vcl.StyledCompResources.dfm │ │ ├── Vcl.StyledComponentsHooks.pas │ │ ├── Vcl.StyledDbNavigator.pas │ │ ├── Vcl.StyledGraphicsUtils.pas │ │ ├── Vcl.StyledMessagesHooks.pas │ │ ├── Vcl.StyledTaskDialog.pas │ │ ├── Vcl.StyledTaskDialogFormUnit.dfm │ │ ├── Vcl.StyledTaskDialogFormUnit.pas │ │ ├── Vcl.StyledTaskDialogStdUnit.dfm │ │ ├── Vcl.StyledTaskDialogStdUnit.pas │ │ ├── Vcl.StyledToolbar.pas │ │ └── Vcl.TemplateButtonStyles.pas ├── SynEdit │ ├── Packages │ │ ├── Delphi11.groupproj │ │ ├── Delphi12.groupproj │ │ ├── SynEdit_D11.dpk │ │ ├── SynEdit_D11.dproj │ │ ├── SynEdit_D11.res │ │ ├── SynEdit_D12.dpk │ │ ├── SynEdit_D12.dproj │ │ ├── SynEdit_D12.res │ │ ├── SynEdit_R11.dpk │ │ ├── SynEdit_R11.dproj │ │ ├── SynEdit_R11.res │ │ ├── SynEdit_R12.dpk │ │ ├── SynEdit_R12.dproj │ │ └── SynEdit_R12.res │ └── Source │ │ ├── DPageSetup.dfm │ │ ├── DPageSetup.pas │ │ ├── FSynHighlightProp.dfm │ │ ├── FSynHighlightProp.pas │ │ ├── FTestPrintPreview.dfm │ │ ├── FTestPrintPreview.pas │ │ ├── Page.bmp │ │ ├── SynAccessibility.pas │ │ ├── SynAutoCorrect.pas │ │ ├── SynAutoCorrectEditor.dfm │ │ ├── SynAutoCorrectEditor.pas │ │ ├── SynCompletionProposal.pas │ │ ├── SynDBEdit.pas │ │ ├── SynDWrite.pas │ │ ├── SynEdit.inc │ │ ├── SynEdit.pas │ │ ├── SynEdit.res │ │ ├── SynEditCodeFolding.pas │ │ ├── SynEditDataObject.pas │ │ ├── SynEditDragDrop.pas │ │ ├── SynEditExport.pas │ │ ├── SynEditHighlighter.pas │ │ ├── SynEditHighlighterOptions.pas │ │ ├── SynEditJedi.inc │ │ ├── SynEditKbdHandler.pas │ │ ├── SynEditKeyCmdEditor.dfm │ │ ├── SynEditKeyCmdEditor.pas │ │ ├── SynEditKeyCmds.pas │ │ ├── SynEditKeyCmdsEditor.dfm │ │ ├── SynEditKeyCmdsEditor.pas │ │ ├── SynEditKeyConst.pas │ │ ├── SynEditMiscClasses.pas │ │ ├── SynEditMiscProcs.pas │ │ ├── SynEditOptionsDialog.dfm │ │ ├── SynEditOptionsDialog.pas │ │ ├── SynEditPlugins.pas │ │ ├── SynEditPrint.pas │ │ ├── SynEditPrintHeaderFooter.pas │ │ ├── SynEditPrintMargins.pas │ │ ├── SynEditPrintMarginsDialog.dfm │ │ ├── SynEditPrintMarginsDialog.pas │ │ ├── SynEditPrintPreview.pas │ │ ├── SynEditPrintTypes.pas │ │ ├── SynEditPrinterInfo.pas │ │ ├── SynEditPropertyReg.pas │ │ ├── SynEditPythonBehaviour.pas │ │ ├── SynEditReg.dcr │ │ ├── SynEditReg.pas │ │ ├── SynEditReg.res │ │ ├── SynEditRegexSearch.pas │ │ ├── SynEditScrollBars.pas │ │ ├── SynEditSearch.pas │ │ ├── SynEditStrConst.pas │ │ ├── SynEditTextBuffer.pas │ │ ├── SynEditTypes.pas │ │ ├── SynEditUndo.pas │ │ ├── SynEditWildcardSearch.pas │ │ ├── SynEditWordWrap.pas │ │ ├── SynExportHTML.pas │ │ ├── SynExportRTF.pas │ │ ├── SynExportTeX.pas │ │ ├── SynHighlighterADSP21xx.pas │ │ ├── SynHighlighterAWK.pas │ │ ├── SynHighlighterAsm.pas │ │ ├── SynHighlighterBaan.pas │ │ ├── SynHighlighterBat.pas │ │ ├── SynHighlighterCAC.pas │ │ ├── SynHighlighterCPM.pas │ │ ├── SynHighlighterCS.pas │ │ ├── SynHighlighterCache.pas │ │ ├── SynHighlighterCobol.pas │ │ ├── SynHighlighterCpp.pas │ │ ├── SynHighlighterCss.pas │ │ ├── SynHighlighterDOT.pas │ │ ├── SynHighlighterDWS.pas │ │ ├── SynHighlighterDfm.pas │ │ ├── SynHighlighterDml.pas │ │ ├── SynHighlighterEiffel.pas │ │ ├── SynHighlighterFortran.pas │ │ ├── SynHighlighterFoxpro.pas │ │ ├── SynHighlighterGWS.pas │ │ ├── SynHighlighterGalaxy.pas │ │ ├── SynHighlighterGeneral.pas │ │ ├── SynHighlighterHC11.pas │ │ ├── SynHighlighterHP48.pas │ │ ├── SynHighlighterHaskell.pas │ │ ├── SynHighlighterHtml.pas │ │ ├── SynHighlighterIDL.pas │ │ ├── SynHighlighterIni.pas │ │ ├── SynHighlighterInno.pas │ │ ├── SynHighlighterJSON.pas │ │ ├── SynHighlighterJScript.pas │ │ ├── SynHighlighterJava.pas │ │ ├── SynHighlighterKix.pas │ │ ├── SynHighlighterLDraw.pas │ │ ├── SynHighlighterLLVM.pas │ │ ├── SynHighlighterM3.pas │ │ ├── SynHighlighterManager.pas │ │ ├── SynHighlighterModelica.pas │ │ ├── SynHighlighterMsg.pas │ │ ├── SynHighlighterMulti.pas │ │ ├── SynHighlighterOmni.pas │ │ ├── SynHighlighterPHP.pas │ │ ├── SynHighlighterPas.pas │ │ ├── SynHighlighterPerl.pas │ │ ├── SynHighlighterProgress.pas │ │ ├── SynHighlighterPython.pas │ │ ├── SynHighlighterRC.pas │ │ ├── SynHighlighterRexx.pas │ │ ├── SynHighlighterRuby.pas │ │ ├── SynHighlighterSDD.pas │ │ ├── SynHighlighterSQL.pas │ │ ├── SynHighlighterST.pas │ │ ├── SynHighlighterSml.pas │ │ ├── SynHighlighterTclTk.pas │ │ ├── SynHighlighterTeX.pas │ │ ├── SynHighlighterUNIXShellScript.pas │ │ ├── SynHighlighterURI.pas │ │ ├── SynHighlighterUnreal.pas │ │ ├── SynHighlighterVB.pas │ │ ├── SynHighlighterVBScript.pas │ │ ├── SynHighlighterVrml97.pas │ │ ├── SynHighlighterWebIDL.pas │ │ ├── SynHighlighterXML.pas │ │ ├── SynHighlighterYAML.pas │ │ ├── SynMacroRecorder.pas │ │ ├── SynOmniSetupDialog.dfm │ │ ├── SynOmniSetupDialog.pas │ │ ├── SynSpellCheck.dcr │ │ ├── SynSpellCheck.pas │ │ ├── SynURIOpener.pas │ │ ├── SynUnicode.pas │ │ ├── dlgConfirmReplace.dfm │ │ ├── dlgConfirmReplace.pas │ │ ├── dlgReplaceText.dfm │ │ ├── dlgReplaceText.pas │ │ ├── dlgSearchText.dfm │ │ └── dlgSearchText.pas ├── SynPDF │ ├── README.md │ ├── SynCommons.pas │ ├── SynCrypto.pas │ ├── SynDoubleToText.inc │ ├── SynFPCTypInfo.pas │ ├── SynGdiPlus.pas │ ├── SynLZ.pas │ ├── SynPdf.pas │ ├── SynTable.pas │ ├── SynZip.pas │ ├── Synopse.inc │ ├── SynopseCommit.inc │ ├── crc32c64.obj │ ├── deflate.obj │ ├── mORMotReport.pas │ ├── sha512-x64sse4.obj │ ├── sha512-x86.obj │ └── trees.obj └── VCLStyleUtils │ ├── Common │ ├── AwesomeFont.RC │ ├── AwesomeFont.RES │ ├── AwesomeFont_zip.RC │ ├── AwesomeFont_zip.RES │ ├── CompileResources.bat │ ├── CompileResources_zip.bat │ ├── VCL.Styles.Utils.inc │ ├── Vcl.PlatformVclStylesActnCtrls.pas │ ├── Vcl.Styles.ColorTabs.pas │ ├── Vcl.Styles.ControlColor.pas │ ├── Vcl.Styles.DPIAware.pas │ ├── Vcl.Styles.DateTimePickers.pas │ ├── Vcl.Styles.DbGrid.pas │ ├── Vcl.Styles.Ext.pas │ ├── Vcl.Styles.Fixes.pas │ ├── Vcl.Styles.FontAwesome.pas │ ├── Vcl.Styles.FormStyleHooks.pas │ ├── Vcl.Styles.Hooks.pas │ ├── Vcl.Styles.NC.pas │ ├── Vcl.Styles.OwnerDrawFix.pas │ ├── Vcl.Styles.Preview.pas │ ├── Vcl.Styles.Register.pas │ ├── Vcl.Styles.Utils.ComCtrls.pas │ ├── Vcl.Styles.Utils.Forms.pas │ ├── Vcl.Styles.Utils.Graphics.pas │ ├── Vcl.Styles.Utils.Menus.pas │ ├── Vcl.Styles.Utils.Misc.pas │ ├── Vcl.Styles.Utils.ScreenTips.pas │ ├── Vcl.Styles.Utils.StdCtrls.pas │ ├── Vcl.Styles.Utils.SysControls.pas │ ├── Vcl.Styles.Utils.SysStyleHook.pas │ ├── Vcl.Styles.Utils.SystemMenu.pas │ ├── Vcl.Styles.Utils.pas │ ├── Vcl.Styles.UxTheme.pas │ └── Vcl.Styles.WebBrowser.pas │ └── DDetours │ └── Source │ ├── CPUID.pas │ ├── DDetours.pas │ ├── DDetoursDefs.inc │ ├── InstDecode.pas │ ├── LegacyTypes.pas │ ├── ModRmFlagsTables.inc │ ├── OpCodesTables.inc │ └── TlHelp32.inc ├── Icons ├── FExplorer.svg ├── fattura elettronica blue.svg ├── fattura elettronica.png ├── fattura elettronica.svg ├── landscape.svg ├── logo.ico ├── portrait.svg ├── save_html.svg ├── save_pdf.svg ├── save_xml.svg ├── setup.ico ├── svg-logo-v.svg ├── xml-gray.svg ├── xml.svg ├── xsl-gray.svg └── xsl.svg ├── Images ├── About.png ├── FEViewer.png ├── FExplorer.png ├── FExplorerLogo.png ├── SettingsAnteprima.png ├── SettingsAvanzate.png ├── SettingsCarattere.png ├── SettingsColoriTesto.png ├── SettingsPDFLayout.png ├── SettingsTema.png └── Setup.png ├── LICENSE ├── README.htm ├── README.md ├── Setup ├── FExplorer.iss ├── Licenza_ITA.rtf ├── Settings.ini ├── SupportingDelphi.jpg ├── WizEtheaImage.bmp ├── WizEtheaSmallImage.bmp ├── WizEtheaSmallImage110x106.bmp ├── WizEtheaSmallImage119x123.bmp ├── WizEtheaSmallImage138x140.bmp ├── WizEtheaSmallImage64x68.bmp ├── WizEtheaSmallImage83x80.bmp └── WizEtheaSmallImage92x97.bmp ├── Source ├── DPageSetup.dfm ├── DPageSetup.pas ├── EtheaMultires.ico ├── FEViewer.dpr ├── FEViewer.dproj ├── FEViewer.res ├── FExplorer.About.dfm ├── FExplorer.About.pas ├── FExplorer.ContextMenuHandler.pas ├── FExplorer.InvoiceToImage.pas ├── FExplorer.Main.pas ├── FExplorer.Misc.pas ├── FExplorer.PreviewForm.dfm ├── FExplorer.PreviewForm.pas ├── FExplorer.PreviewHandler.pas ├── FExplorer.PreviewHandlerRegister.pas ├── FExplorer.Registry.pas ├── FExplorer.Resources.dfm ├── FExplorer.Resources.pas ├── FExplorer.Settings.pas ├── FExplorer.SettingsForm.dfm ├── FExplorer.SettingsForm.pas ├── FExplorer.Splash.dfm ├── FExplorer.Splash.pas ├── FExplorer.ThumbnailHandler.pas ├── FExplorer.ThumbnailHandlerRegister.pas ├── FExplorer.ThumbnailResources.dfm ├── FExplorer.ThumbnailResources.pas ├── FExplorer.ViewerMainForm.dfm ├── FExplorer.ViewerMainForm.pas ├── FExplorer.dpr ├── FExplorer.dproj ├── FExplorer.res ├── FExplorer32.dpr ├── FExplorer32.dproj ├── FExplorer32.res ├── FExplorerGroup.groupproj ├── PKCS7Extractor.pas ├── SynEditOptionsDialog.dfm ├── SynEditOptionsDialog.pas ├── dlgConfirmReplace.dfm ├── dlgConfirmReplace.pas ├── dlgReplaceText.dfm ├── dlgReplaceText.pas ├── dlgSearchText.dfm ├── dlgSearchText.pas ├── uCommonPreviewHandler.pas ├── uDragDropUtils.pas ├── uFilePreviewHandler.pas ├── uLogExcept.pas ├── uMisc.pas ├── uPreviewContainer.dfm ├── uPreviewContainer.pas ├── uPreviewHandler.pas ├── uPreviewHandlerRegister.pas ├── uRegistry.pas ├── uStackTrace.pas ├── uStreamAdapter.pas ├── uStreamPreviewHandler.pas └── vmHtmlToPdf.pas └── Unregister_Register.cmd /.gitignore: -------------------------------------------------------------------------------- 1 | # Uncomment these types if you want even more clean repository. But be careful. 2 | # It can make harm to an existing project source. Read explanations below. 3 | # 4 | # Resource files are binaries containing manifest, project icon and version info. 5 | # They can not be viewed as text or compared by diff-tools. Consider replacing them with .rc files. 6 | #*.res 7 | # 8 | # Type library file (binary). In old Delphi versions it should be stored. 9 | # Since Delphi 2009 it is produced from .ridl file and can safely be ignored. 10 | #*.tlb 11 | # 12 | # Diagram Portfolio file. Used by the diagram editor up to Delphi 7. 13 | # Uncomment this if you are not using diagrams or use newer Delphi version. 14 | #*.ddp 15 | # 16 | # Visual LiveBindings file. Added in Delphi XE2. 17 | # Uncomment this if you are not using LiveBindings Designer. 18 | #*.vlb 19 | # 20 | # Deployment Manager configuration file for your project. Added in Delphi XE2. 21 | # Uncomment this if it is not mobile development and you do not use remote debug feature. 22 | #*.deployproj 23 | # 24 | # C++ object files produced when C/C++ Output file generation is configured. 25 | # Uncomment this if you are not using external objects (zlib library for example). 26 | #*.obj 27 | # 28 | 29 | # Delphi compiler-generated binaries (safe to delete) 30 | *.exe 31 | *.dll 32 | *.bpl 33 | *.bpi 34 | *.dcp 35 | *.so 36 | *.apk 37 | *.drc 38 | *.map 39 | *.dres 40 | *.rsm 41 | *.tds 42 | *.dcu 43 | *.lib 44 | *.a 45 | *.o 46 | *.ocx 47 | 48 | # Delphi autogenerated files (duplicated info) 49 | *.cfg 50 | *.hpp 51 | *Resource.rc 52 | 53 | # Delphi local files (user-specific info) 54 | *.local 55 | *.identcache 56 | *.projdata 57 | *.tvsconfig 58 | *.dsk 59 | 60 | # Delphi history and backups 61 | __history/ 62 | __recovery/ 63 | *.~* 64 | 65 | # Castalia statistics file (since XE7 Castalia is distributed with Delphi) 66 | *.stat 67 | 68 | # Boss dependency manager vendor folder https://github.com/HashLoad/boss 69 | modules/ 70 | -------------------------------------------------------------------------------- /Bin32/Register32bit.bat: -------------------------------------------------------------------------------- 1 | %systemroot%\SysWoW64\regsvr32 "D:\ETHEA\FExplorer\Bin32\FExplorer32.dll" -------------------------------------------------------------------------------- /Bin32/UnRegister32bit.bat: -------------------------------------------------------------------------------- 1 | %systemroot%\SysWoW64\regsvr32 /u "D:\ETHEA\FExplorer\Bin32\FExplorer32.dll" -------------------------------------------------------------------------------- /Bin64/Register64bit.bat: -------------------------------------------------------------------------------- 1 | %systemroot%\System32\regsvr32 "D:\ETHEA\FExplorer\Bin64\FExplorer.dll" -------------------------------------------------------------------------------- /Bin64/UnRegister64bit.bat: -------------------------------------------------------------------------------- 1 | %systemroot%\System32\regsvr32 /u "D:\ETHEA\FExplorer\Bin64\FExplorer.dll" 2 | rem %systemroot%\System32\regsvr32 /u "C:\Program Files\Ethea\FExplorer\FExplorer.dll" -------------------------------------------------------------------------------- /Build.bat: -------------------------------------------------------------------------------- 1 | call "C:\BDS\Studio\23.0\bin\rsvars.bat" 2 | msbuild.exe "Source\FExplorer.dproj" /target:Clean;Build /p:Platform=Win64 /p:config=release 3 | msbuild.exe "Source\FExplorer32.dproj" /target:Clean;Build /p:Platform=Win32 /p:config=release 4 | msbuild.exe "Source\FEViewer.dproj" /target:Clean;Build /p:Platform=Win64 /p:config=release 5 | msbuild.exe "Source\FEViewer.dproj" /target:Clean;Build /p:Platform=Win32 /p:config=release 6 | 7 | call D:\ETHEA\Certificate\SignFileWithSectico.bat D:\ETHEA\FExplorer\Bin32\FEViewer.exe 8 | call D:\ETHEA\Certificate\SignFileWithSectico.bat D:\ETHEA\FExplorer\Bin64\FEViewer.exe 9 | 10 | :INNO 11 | "C:\Program Files (x86)\Inno Setup 6\iscc.exe" "D:\ETHEA\FExplorer\Setup\FExplorer.iss" 12 | set INNO_STATUS=%ERRORLEVEL% 13 | if %INNO_STATUS%==0 GOTO SIGNSETUP 14 | pause 15 | EXIT 16 | 17 | :SIGNSETUP 18 | call D:\ETHEA\Certificate\SignFileWithSectico.bat D:\ETHEA\FExplorer\Setup\Output\FExplorerSetup.exe 19 | 20 | :END 21 | pause 22 | -------------------------------------------------------------------------------- /Debug/Preview Handlers/PreviewHandler Host/PreviewHost.dpr: -------------------------------------------------------------------------------- 1 | program PreviewHost; 2 | 3 | uses 4 | Vcl.Forms, 5 | uMain in 'uMain.pas' {FrmMain}, 6 | uHostPreview in 'uHostPreview.pas'; 7 | 8 | {$R *.res} 9 | 10 | begin 11 | Application.Initialize; 12 | Application.MainFormOnTaskbar := True; 13 | Application.CreateForm(TFrmMain, FrmMain); 14 | Application.Run; 15 | end. 16 | -------------------------------------------------------------------------------- /Debug/Preview Handlers/PreviewHandler Host/PreviewHost.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Debug/Preview Handlers/PreviewHandler Host/PreviewHost.res -------------------------------------------------------------------------------- /Debug/Preview Handlers/PreviewHandler Host/uMain.dfm: -------------------------------------------------------------------------------- 1 | object FrmMain: TFrmMain 2 | Left = 0 3 | Top = 0 4 | Caption = 'Preview Handler Host Demo' 5 | ClientHeight = 559 6 | ClientWidth = 960 7 | Color = clBtnFace 8 | Font.Charset = DEFAULT_CHARSET 9 | Font.Color = clWindowText 10 | Font.Height = -11 11 | Font.Name = 'Tahoma' 12 | Font.Style = [] 13 | OnCreate = FormCreate 14 | OnDestroy = FormDestroy 15 | TextHeight = 13 16 | object Splitter1: TSplitter 17 | Left = 417 18 | Top = 0 19 | Width = 4 20 | Height = 559 21 | AutoSnap = False 22 | ExplicitLeft = 217 23 | ExplicitHeight = 338 24 | end 25 | object Panel1: TPanel 26 | Left = 421 27 | Top = 0 28 | Width = 539 29 | Height = 559 30 | Align = alClient 31 | TabOrder = 0 32 | end 33 | object Panel3: TPanel 34 | Left = 0 35 | Top = 0 36 | Width = 417 37 | Height = 559 38 | Align = alLeft 39 | TabOrder = 1 40 | object ShellListView1: TShellListView 41 | Left = 1 42 | Top = 195 43 | Width = 415 44 | Height = 363 45 | ObjectTypes = [otFolders, otNonFolders] 46 | Root = 'D:\ETHEA\FExplorer\Docs\Examples' 47 | ShellTreeView = ShellTreeView1 48 | Sorted = True 49 | Align = alClient 50 | ReadOnly = False 51 | HideSelection = False 52 | OnChange = ShellListView1Change 53 | TabOrder = 0 54 | ViewStyle = vsReport 55 | end 56 | object ShellTreeView1: TShellTreeView 57 | Left = 1 58 | Top = 1 59 | Width = 415 60 | Height = 194 61 | ObjectTypes = [otFolders] 62 | Root = 'D:\ETHEA\FExplorer\Docs\Examples' 63 | ShellListView = ShellListView1 64 | UseShellImages = True 65 | Align = alTop 66 | AutoRefresh = False 67 | Indent = 19 68 | ParentColor = False 69 | RightClickSelect = True 70 | ShowRoot = False 71 | TabOrder = 1 72 | end 73 | end 74 | end 75 | -------------------------------------------------------------------------------- /Debug/Preview Handlers/PreviewHandler Host/uMain.pas: -------------------------------------------------------------------------------- 1 | unit uMain; 2 | 3 | interface 4 | 5 | uses 6 | Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, 7 | Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.OleCtnrs, uHostPreview, 8 | Vcl.ExtCtrls, Vcl.ComCtrls, Vcl.Shell.ShellCtrls; 9 | 10 | type 11 | TFrmMain = class(TForm) 12 | Panel1: TPanel; 13 | Panel3: TPanel; 14 | ShellListView1: TShellListView; 15 | Splitter1: TSplitter; 16 | ShellTreeView1: TShellTreeView; 17 | procedure ShellListView1Change(Sender: TObject; Item: TListItem; 18 | Change: TItemChange); 19 | procedure FormCreate(Sender: TObject); 20 | procedure FormDestroy(Sender: TObject); 21 | private 22 | FFileName: string; 23 | { Private declarations } 24 | FPreview: THostPreviewHandler; 25 | procedure LoadPreview(const FileName: string); 26 | public 27 | { Public declarations } 28 | end; 29 | 30 | var 31 | FrmMain: TFrmMain; 32 | 33 | implementation 34 | 35 | 36 | {$R *.dfm} 37 | 38 | type 39 | THostPreviewHandlerClass=class(THostPreviewHandler); 40 | 41 | 42 | procedure TFrmMain.FormCreate(Sender: TObject); 43 | begin 44 | FPreview := nil; 45 | end; 46 | 47 | procedure TFrmMain.FormDestroy(Sender: TObject); 48 | begin 49 | if FPreview<>nil then 50 | FPreview.Free; 51 | end; 52 | 53 | procedure TFrmMain.LoadPreview(const FileName: string); 54 | begin 55 | if FPreview = nil then 56 | FPreview := THostPreviewHandler.Create(Self); 57 | 58 | // if FPreview<>nil then 59 | // FPreview.Free; 60 | 61 | FPreview.Top := 0; 62 | FPreview.Left := 0; 63 | (* 64 | FPreview.Width := Panel1.ClientWidth; 65 | FPreview.Height := Panel1.ClientHeight; 66 | *) 67 | FPreview.Parent := Panel1; 68 | FPreview.Align := alClient; 69 | //FPreview.FileName:='C:\Users\Dexter\Desktop\RAD Studio Projects\XE2\delphi-preview-handler\main.pas'; 70 | //FPreview.FileName:='C:\Users\Dexter\Desktop\RAD Studio Projects\2010\SMBIOS Delphi\Docs\DSP0119.pdf'; 71 | //FPreview.FileName:='C:\Users\Dexter\Desktop\seleccion\RePLE.msg'; 72 | FPreview.FileName:=FileName; 73 | THostPreviewHandlerClass(FPreview).Paint; 74 | end; 75 | 76 | procedure TFrmMain.ShellListView1Change(Sender: TObject; Item: TListItem; 77 | Change: TItemChange); 78 | var 79 | LFileName: string; 80 | begin 81 | if (ShellListView1.SelectedFolder<>nil) then 82 | begin 83 | LFileName := ShellListView1.SelectedFolder.PathName; 84 | if (LFileName <> FFileName) and FileExists(LFileName) then 85 | begin 86 | LoadPreview(LFileName); 87 | FFileName := LFileName; 88 | end; 89 | end; 90 | end; 91 | 92 | end. 93 | -------------------------------------------------------------------------------- /Docs/Templates/Template.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | Fattura 8 | 12345 9 | 01/02/2021 10 | Ethea S.r.l. 11 | 12.456,43 12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /Docs/Templates/Template_vuoto.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | Fattura 9 | 2021R00030286 10 | 22/01/2021 11 | Fornitore 12 | Cliente 13 | € 596,00 14 | 15 | 16 | -------------------------------------------------------------------------------- /Docs/Templates/test.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | Simecom S.r.l. 6 | MILLENNIUM DATAWARE SRL 7 | Fattura 8 | 2021R00030286 9 | 22/01/2021 10 | 596,00 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /Ext/External Projects.md: -------------------------------------------------------------------------------- 1 | # External projects 2 | 3 | ***In questo progetto vengono utilizzati questi progetti esterni*** 4 | 5 | - [Ethea's SVGIconImageList][1] 6 | 7 | - [Ethea's VCL-StyledComponents][4] 8 | 9 | - [PKCS7Extractor][3] 10 | 11 | - [Synedit][4] 12 | 13 | ***Per comodità di ricompilazione sono stati aggiunti in questa cartella*** 14 | 15 | [1]: https://github.com/EtheaDev/SVGIconImageList 16 | [2]: https://github.com/EtheaDev/StyledComponents 17 | [3]: https://github.com/DelphiClubItalia/PKCS7Extractor 18 | [4]: https://github.com/SynEdit/SynEdit 19 | -------------------------------------------------------------------------------- /Ext/HTMLViewer/License.txt: -------------------------------------------------------------------------------- 1 | ------------------------------------------------------------------------ 2 | HtmlViewer (v) 11 3 | ------------------------------------------------------------------------ 4 | 5 | Copyright (c) 1995 - 2008 by L. David Baldwin 6 | Copyright (c) 2008 - 2009 by Sebastian Zierer (Delphi 2009 Port) 7 | Copyright (c) 2008 - 2010 by Arvid Winkelsdorf (Fixes) 8 | Copyright (c) 2009 - 2017 by Bernd Gabriel (Fixes, Enhancements) 9 | 10 | Permission is hereby granted, free of charge, to any person obtaining a 11 | copy of this software and associated documentation files (the 12 | "Software"), to deal in the Software without restriction, including 13 | without limitation the rights to use, copy, modify, merge, publish, 14 | distribute, sublicense, and/or sell copies of the Software, and to 15 | permit persons to whom the Software is furnished to do so, subject to 16 | the following conditions: 17 | 18 | The above copyright notice and this permission notice shall be included 19 | in all copies or substantial portions of the Software. 20 | 21 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 22 | OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 23 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 24 | IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY 25 | CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 26 | TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 27 | SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 28 | 29 | Note that the source modules HTMLGIF1.PAS, DITHERUNIT.PAS and 30 | HTMLMISC.PAS are covered by separate copyright notices located in 31 | those modules: 32 | 33 | Copyright (c) 1995 - 2008 by Anders Melander (DitherUnit.pas) 34 | Copyright (c) 1995 - 2008 by Ron Collins (HtmlGif1.pas) 35 | Copyright (c) 2006 - 2009 by Phil Hess (HtmlMisc.pas) 36 | 37 | ------------------------------------------------------------------------ -------------------------------------------------------------------------------- /Ext/HTMLViewer/Source/BegaPreviewForm.dfm: -------------------------------------------------------------------------------- 1 | object BegaCustomPrintPreviewForm: TBegaCustomPrintPreviewForm 2 | Left = 431 3 | Top = 144 4 | Caption = 'Print preview' 5 | ClientHeight = 768 6 | ClientWidth = 1008 7 | Color = clBtnFace 8 | Font.Charset = DEFAULT_CHARSET 9 | Font.Color = clWindowText 10 | Font.Height = -11 11 | Font.Name = 'MS Shell Dlg 2' 12 | Font.Style = [] 13 | OldCreateOrder = False 14 | Position = poOwnerFormCenter 15 | PixelsPerInch = 96 16 | TextHeight = 13 17 | end 18 | -------------------------------------------------------------------------------- /Ext/HTMLViewer/Source/BuffConv.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/HTMLViewer/Source/BuffConv.pas -------------------------------------------------------------------------------- /Ext/HTMLViewer/Source/BuffConvArrays.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/HTMLViewer/Source/BuffConvArrays.pas -------------------------------------------------------------------------------- /Ext/HTMLViewer/Source/FrameViewerReg.pas: -------------------------------------------------------------------------------- 1 | { 2 | Version 11.7 3 | Copyright (c) 1995-2008 by L. David Baldwin 4 | Copyright (c) 2008-2014 by HtmlViewer Team 5 | Copyright (c) 2015-2016 by Bernd Gabriel 6 | 7 | Permission is hereby granted, free of charge, to any person obtaining a copy of 8 | this software and associated documentation files (the "Software"), to deal in 9 | the Software without restriction, including without limitation the rights to 10 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 11 | of the Software, and to permit persons to whom the Software is furnished to do 12 | so, subject to the following conditions: 13 | 14 | The above copyright notice and this permission notice shall be included in all 15 | copies or substantial portions of the Software. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 19 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 20 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 21 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 22 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23 | 24 | Note that the source modules HTMLGIF1.PAS and DITHERUNIT.PAS 25 | are covered by separate copyright notices located in those modules. 26 | } 27 | 28 | {$I htmlcons.inc} 29 | 30 | unit FrameViewerReg; 31 | 32 | interface 33 | 34 | uses 35 | {$ifdef LCL} 36 | LResources, 37 | {$else} 38 | {$endif} 39 | Classes, 40 | {$ifndef UseOldPreviewForm} 41 | BegaPreview, 42 | BegaPreviewForm, 43 | BegaPreviewPanel, 44 | BegaScrollBox, 45 | BegaZoom, 46 | {$endif} 47 | UrlConn, 48 | HtmlView, 49 | FramView, 50 | FramBrwz; 51 | 52 | procedure Register; 53 | 54 | implementation 55 | 56 | procedure Register; 57 | begin 58 | RegisterComponents('HtmlViewer/FrameViewer', [ 59 | {$ifndef UseOldPreviewForm} 60 | {$ifndef NoMetaFile} 61 | {$ifndef NoFlatScrollbars} 62 | TBegaMetafilePreviewPanel, 63 | TBegaPreviewFrame, 64 | TBegaScrollBox, 65 | TBegaZoomBox, 66 | TBegaCustomPrintPreviewForm, 67 | {$endif} 68 | {$endif} 69 | {$endif} 70 | ThtConnectionManager, 71 | ThtFileConnector, 72 | ThtResourceConnector, 73 | THtmlViewer, 74 | TFrameViewer, 75 | TFrameBrowser]); 76 | end; 77 | 78 | {$ifdef LCL} 79 | initialization 80 | {$I htmlcomp.lrs} 81 | {$endif} 82 | 83 | end. 84 | -------------------------------------------------------------------------------- /Ext/HTMLViewer/Source/GDIPL2A.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/HTMLViewer/Source/GDIPL2A.pas -------------------------------------------------------------------------------- /Ext/HTMLViewer/Source/HTMLCompEdit.pas: -------------------------------------------------------------------------------- 1 | { 2 | Version 11 3 | Copyright (c) 1995-2008 by L. David Baldwin, 2008-2010 by HtmlViewer Team 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of 6 | this software and associated documentation files (the "Software"), to deal in 7 | the Software without restriction, including without limitation the rights to 8 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 9 | of the Software, and to permit persons to whom the Software is furnished to do 10 | so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 17 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 18 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 19 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 20 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 21 | 22 | Note that the source modules HTMLGIF1.PAS and DITHERUNIT.PAS 23 | are covered by separate copyright notices located in those modules. 24 | } 25 | 26 | {$I htmlcons.inc} 27 | 28 | unit HTMLCompEdit; 29 | 30 | interface 31 | 32 | uses 33 | SysUtils, Windows, Messages, Classes, Controls, StdCtrls, 34 | Dialogs, ExtCtrls, 35 | designintf, DesignEditors; 36 | 37 | type 38 | 39 | THtComponentEditor = class(TComponentEditor) 40 | function GetVerbCount: Integer; override; 41 | function GetVerb(index: Integer): string; override; 42 | procedure ExecuteVerb(index: Integer); override; 43 | end; 44 | 45 | THTMLEditor = class(THtComponentEditor) 46 | end; 47 | 48 | TFMVEditor = class(THtComponentEditor) 49 | end; 50 | 51 | TFMBEditor = class(THtComponentEditor) 52 | end; 53 | 54 | procedure Register; 55 | 56 | implementation 57 | 58 | uses 59 | htmlview, htmlun2, framview, frambrwz; 60 | 61 | procedure Register; 62 | begin 63 | RegisterComponentEditor(THTMLViewer, THTMLEditor); 64 | RegisterComponentEditor(TFrameViewer, TFMVEditor); 65 | RegisterComponentEditor(TFrameBrowser, TFMBEditor); 66 | end; 67 | 68 | { THtComponentEditor } 69 | 70 | function THtComponentEditor.GetVerbCount: integer; 71 | begin 72 | Result := 1; 73 | end; 74 | 75 | function THtComponentEditor.GetVerb(index: Integer): string; 76 | begin 77 | Result := 'About...'; 78 | end; 79 | 80 | procedure THtComponentEditor.ExecuteVerb(index: integer); 81 | begin 82 | MessageDlg( 83 | GetComponent.ClassName + ', Version (V) ' + VersionNo + #13#13 + 84 | 'Copyright (C) 2011-2012 by the HtmlViewer Project Team'#13 + 85 | ' Bernd Gabriel'#13 + 86 | ' J. Peter Mugaas'#13#13 + 87 | 'Copyright (C) 2008-2010 by the HtmlViewer Project Team'#13 + 88 | ' Patrick van Logchem'#13 + 89 | ' Sebastian Zierer'#13 + 90 | ' Arvid Winkelsdorf'#13 + 91 | ' Bernd Gabriel'#13#13 + 92 | 'Copyright (C) 1995-2008 by L. David Baldwin', 93 | mtInformation, [mbOk], 0); 94 | end; 95 | 96 | end. 97 | -------------------------------------------------------------------------------- /Ext/HTMLViewer/Source/Html32.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/HTMLViewer/Source/Html32.res -------------------------------------------------------------------------------- /Ext/HTMLViewer/Source/URLSubs.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/HTMLViewer/Source/URLSubs.pas -------------------------------------------------------------------------------- /Ext/HTMLViewer/Source/ZoomAndHandCursor.RES: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/HTMLViewer/Source/ZoomAndHandCursor.RES -------------------------------------------------------------------------------- /Ext/HTMLViewer/package/FRAMVIEW.DCR: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/HTMLViewer/package/FRAMVIEW.DCR -------------------------------------------------------------------------------- /Ext/HTMLViewer/package/FrameViewer11.dpk: -------------------------------------------------------------------------------- 1 | package FrameViewer11; 2 | 3 | {$R *.res} 4 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 5 | {$ALIGN 8} 6 | {$ASSERTIONS ON} 7 | {$BOOLEVAL OFF} 8 | {$DEBUGINFO OFF} 9 | {$EXTENDEDSYNTAX ON} 10 | {$IMPORTEDDATA ON} 11 | {$IOCHECKS ON} 12 | {$LOCALSYMBOLS OFF} 13 | {$LONGSTRINGS ON} 14 | {$OPENSTRINGS ON} 15 | {$OPTIMIZATION ON} 16 | {$OVERFLOWCHECKS OFF} 17 | {$RANGECHECKS OFF} 18 | {$REFERENCEINFO OFF} 19 | {$SAFEDIVIDE OFF} 20 | {$STACKFRAMES OFF} 21 | {$TYPEDADDRESS OFF} 22 | {$VARSTRINGCHECKS ON} 23 | {$WRITEABLECONST OFF} 24 | {$MINENUMSIZE 1} 25 | {$IMAGEBASE $400000} 26 | {$DEFINE RELEASE} 27 | {$ENDIF IMPLICITBUILDING} 28 | {$DESCRIPTION 'THtmlViewer, TFrameViewer, and TFrameBrowser for D11'} 29 | {$RUNONLY} 30 | {$IMPLICITBUILD ON} 31 | 32 | requires 33 | rtl, 34 | vcl, 35 | vclimg, 36 | soaprtl, 37 | VclSmp; 38 | 39 | contains 40 | BegaHtmlPrintPreviewForm in '..\source\BegaHtmlPrintPreviewForm.pas', 41 | BegaMetaFilePrinter in '..\source\BegaMetaFilePrinter.pas', 42 | BegaPreview in '..\source\BegaPreview.pas', 43 | BegaPreviewForm in '..\source\BegaPreviewForm.pas' {BegaCustomPrintPreviewForm}, 44 | BegaPreviewPanel in '..\source\BegaPreviewPanel.pas', 45 | BegaScrollBox in '..\source\BegaScrollBox.pas', 46 | BegaZoom in '..\source\BegaZoom.pas', 47 | BuffConv in '..\source\BuffConv.pas', 48 | BuffConvArrays in '..\source\BuffConvArrays.pas', 49 | DitherUnit in '..\source\DitherUnit.pas', 50 | FramBrwz in '..\source\FramBrwz.pas', 51 | framview in '..\source\framview.pas', 52 | GDIPL2A in '..\source\GDIPL2A.pas', 53 | HSLUtils in '..\source\HSLUtils.pas', 54 | HtmlBuffer in '..\source\HtmlBuffer.pas', 55 | HtmlCaches in '..\source\HtmlCaches.pas', 56 | HtmlFonts in '..\source\HtmlFonts.pas', 57 | htmlgif1 in '..\source\htmlgif1.pas', 58 | HTMLGif2 in '..\source\HTMLGif2.pas', 59 | HtmlGlobals in '..\source\HtmlGlobals.pas', 60 | HtmlImages in '..\source\HtmlImages.pas', 61 | Htmlsbs1 in '..\source\Htmlsbs1.pas', 62 | HTMLSubs in '..\source\HTMLSubs.pas', 63 | HtmlSymb in '..\source\HtmlSymb.pas', 64 | HTMLUn2 in '..\source\HTMLUn2.pas', 65 | htmlview in '..\source\htmlview.pas', 66 | MetaFilePrinter in '..\source\MetaFilePrinter.pas', 67 | ReadHTML in '..\source\ReadHTML.pas', 68 | StylePars in '..\source\StylePars.pas', 69 | StyleTypes in '..\source\StyleTypes.pas', 70 | StyleUn in '..\source\StyleUn.pas', 71 | URLSubs in '..\source\URLSubs.pas', 72 | UrlConn in '..\Source\UrlConn.pas', 73 | HtmlPrinter in '..\source\HtmlPrinter.pas', 74 | vwPrint in '..\source\vwPrint.pas'; 75 | 76 | end. 77 | 78 | -------------------------------------------------------------------------------- /Ext/HTMLViewer/package/FrameViewer11.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/HTMLViewer/package/FrameViewer11.res -------------------------------------------------------------------------------- /Ext/HTMLViewer/package/FrameViewer12.dpk: -------------------------------------------------------------------------------- 1 | package FrameViewer12; 2 | 3 | {$R *.res} 4 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 5 | {$ALIGN 8} 6 | {$ASSERTIONS ON} 7 | {$BOOLEVAL OFF} 8 | {$DEBUGINFO OFF} 9 | {$EXTENDEDSYNTAX ON} 10 | {$IMPORTEDDATA ON} 11 | {$IOCHECKS ON} 12 | {$LOCALSYMBOLS OFF} 13 | {$LONGSTRINGS ON} 14 | {$OPENSTRINGS ON} 15 | {$OPTIMIZATION ON} 16 | {$OVERFLOWCHECKS OFF} 17 | {$RANGECHECKS OFF} 18 | {$REFERENCEINFO OFF} 19 | {$SAFEDIVIDE OFF} 20 | {$STACKFRAMES OFF} 21 | {$TYPEDADDRESS OFF} 22 | {$VARSTRINGCHECKS ON} 23 | {$WRITEABLECONST OFF} 24 | {$MINENUMSIZE 1} 25 | {$IMAGEBASE $400000} 26 | {$DEFINE RELEASE} 27 | {$ENDIF IMPLICITBUILDING} 28 | {$DESCRIPTION 'THtmlViewer, TFrameViewer, and TFrameBrowser for D12'} 29 | {$RUNONLY} 30 | {$IMPLICITBUILD ON} 31 | 32 | requires 33 | rtl, 34 | vcl, 35 | vclimg, 36 | soaprtl, 37 | VclSmp; 38 | 39 | contains 40 | BegaHtmlPrintPreviewForm in '..\source\BegaHtmlPrintPreviewForm.pas', 41 | BegaMetaFilePrinter in '..\source\BegaMetaFilePrinter.pas', 42 | BegaPreview in '..\source\BegaPreview.pas', 43 | BegaPreviewForm in '..\source\BegaPreviewForm.pas' {BegaCustomPrintPreviewForm}, 44 | BegaPreviewPanel in '..\source\BegaPreviewPanel.pas', 45 | BegaScrollBox in '..\source\BegaScrollBox.pas', 46 | BegaZoom in '..\source\BegaZoom.pas', 47 | BuffConv in '..\source\BuffConv.pas', 48 | BuffConvArrays in '..\source\BuffConvArrays.pas', 49 | DitherUnit in '..\source\DitherUnit.pas', 50 | FramBrwz in '..\source\FramBrwz.pas', 51 | framview in '..\source\framview.pas', 52 | GDIPL2A in '..\source\GDIPL2A.pas', 53 | HSLUtils in '..\source\HSLUtils.pas', 54 | HtmlBuffer in '..\source\HtmlBuffer.pas', 55 | HtmlCaches in '..\source\HtmlCaches.pas', 56 | HtmlFonts in '..\source\HtmlFonts.pas', 57 | htmlgif1 in '..\source\htmlgif1.pas', 58 | HTMLGif2 in '..\source\HTMLGif2.pas', 59 | HtmlGlobals in '..\source\HtmlGlobals.pas', 60 | HtmlImages in '..\source\HtmlImages.pas', 61 | Htmlsbs1 in '..\source\Htmlsbs1.pas', 62 | HTMLSubs in '..\source\HTMLSubs.pas', 63 | HtmlSymb in '..\source\HtmlSymb.pas', 64 | HTMLUn2 in '..\source\HTMLUn2.pas', 65 | htmlview in '..\source\htmlview.pas', 66 | MetaFilePrinter in '..\source\MetaFilePrinter.pas', 67 | ReadHTML in '..\source\ReadHTML.pas', 68 | StylePars in '..\source\StylePars.pas', 69 | StyleTypes in '..\source\StyleTypes.pas', 70 | StyleUn in '..\source\StyleUn.pas', 71 | URLSubs in '..\source\URLSubs.pas', 72 | UrlConn in '..\Source\UrlConn.pas', 73 | HtmlPrinter in '..\source\HtmlPrinter.pas', 74 | vwPrint in '..\source\vwPrint.pas'; 75 | 76 | end. 77 | 78 | -------------------------------------------------------------------------------- /Ext/HTMLViewer/package/FrameViewer12.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/HTMLViewer/package/FrameViewer12.res -------------------------------------------------------------------------------- /Ext/HTMLViewer/package/HTMLVIEW.DCR: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/HTMLViewer/package/HTMLVIEW.DCR -------------------------------------------------------------------------------- /Ext/HTMLViewer/package/HTMLViewerPackages11.groupproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | {47219831-9371-4499-A452-F2A0AC7D147F} 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | Default.Personality.12 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 | -------------------------------------------------------------------------------- /Ext/HTMLViewer/package/HTMLViewerPackages12.groupproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | {55ADB20A-4277-4A1B-A5F1-33E9A96F463B} 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | Default.Personality.12 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 | -------------------------------------------------------------------------------- /Ext/HTMLViewer/package/dclFrameViewer11.dpk: -------------------------------------------------------------------------------- 1 | package dclFrameViewer11; 2 | 3 | {$R *.res} 4 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 5 | {$ALIGN 8} 6 | {$ASSERTIONS ON} 7 | {$BOOLEVAL OFF} 8 | {$DEBUGINFO OFF} 9 | {$EXTENDEDSYNTAX ON} 10 | {$IMPORTEDDATA ON} 11 | {$IOCHECKS ON} 12 | {$LOCALSYMBOLS OFF} 13 | {$LONGSTRINGS ON} 14 | {$OPENSTRINGS ON} 15 | {$OPTIMIZATION ON} 16 | {$OVERFLOWCHECKS OFF} 17 | {$RANGECHECKS OFF} 18 | {$REFERENCEINFO OFF} 19 | {$SAFEDIVIDE OFF} 20 | {$STACKFRAMES OFF} 21 | {$TYPEDADDRESS OFF} 22 | {$VARSTRINGCHECKS ON} 23 | {$WRITEABLECONST OFF} 24 | {$MINENUMSIZE 1} 25 | {$IMAGEBASE $400000} 26 | {$DEFINE RELEASE} 27 | {$ENDIF IMPLICITBUILDING} 28 | {$DESCRIPTION 'THtmlViewer, TFrameViewer, and TFrameBrowser'} 29 | {$DESIGNONLY} 30 | {$IMPLICITBUILD ON} 31 | 32 | requires 33 | designide, 34 | FrameViewer11; 35 | 36 | contains 37 | FrameViewerReg in '..\source\FrameViewerReg.pas', 38 | HTMLCompEdit in '..\source\HTMLCompEdit.pas'; 39 | 40 | end. 41 | -------------------------------------------------------------------------------- /Ext/HTMLViewer/package/dclFrameViewer11.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/HTMLViewer/package/dclFrameViewer11.res -------------------------------------------------------------------------------- /Ext/HTMLViewer/package/dclFrameViewer12.dpk: -------------------------------------------------------------------------------- 1 | package dclFrameViewer12; 2 | 3 | {$R *.res} 4 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 5 | {$ALIGN 8} 6 | {$ASSERTIONS ON} 7 | {$BOOLEVAL OFF} 8 | {$DEBUGINFO OFF} 9 | {$EXTENDEDSYNTAX ON} 10 | {$IMPORTEDDATA ON} 11 | {$IOCHECKS ON} 12 | {$LOCALSYMBOLS OFF} 13 | {$LONGSTRINGS ON} 14 | {$OPENSTRINGS ON} 15 | {$OPTIMIZATION ON} 16 | {$OVERFLOWCHECKS OFF} 17 | {$RANGECHECKS OFF} 18 | {$REFERENCEINFO OFF} 19 | {$SAFEDIVIDE OFF} 20 | {$STACKFRAMES OFF} 21 | {$TYPEDADDRESS OFF} 22 | {$VARSTRINGCHECKS ON} 23 | {$WRITEABLECONST OFF} 24 | {$MINENUMSIZE 1} 25 | {$IMAGEBASE $400000} 26 | {$DEFINE RELEASE} 27 | {$ENDIF IMPLICITBUILDING} 28 | {$DESCRIPTION 'THtmlViewer, TFrameViewer, and TFrameBrowser'} 29 | {$DESIGNONLY} 30 | {$IMPLICITBUILD ON} 31 | 32 | requires 33 | designide, 34 | FrameViewer12; 35 | 36 | contains 37 | FrameViewerReg in '..\source\FrameViewerReg.pas', 38 | HTMLCompEdit in '..\source\HTMLCompEdit.pas'; 39 | 40 | end. 41 | -------------------------------------------------------------------------------- /Ext/HTMLViewer/package/dclFrameViewer12.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/HTMLViewer/package/dclFrameViewer12.res -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Image32/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Boost Software License - Version 1.0 - August 17th, 2003 2 | 3 | Permission is hereby granted, free of charge, to any person or organization 4 | obtaining a copy of the software and accompanying documentation covered by 5 | this license (the "Software") to use, reproduce, display, distribute, 6 | execute, and transmit the Software, and to prepare derivative works of the 7 | Software, and to permit third-parties to whom the Software is furnished to 8 | do so, all subject to the following: 9 | 10 | The copyright notices in the Software and this entire statement, including 11 | the above license grant, this restriction and the following disclaimer, 12 | must be included in all copies of the Software, in whole or in part, and 13 | all derivative works of the Software, unless such copies or derivative 14 | works are solely in the form of machine-executable object code generated by 15 | a source language processor. 16 | 17 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 18 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 19 | FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT 20 | SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE 21 | FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, 22 | ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 23 | DEALINGS IN THE SOFTWARE. 24 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Image32/Readme.md: -------------------------------------------------------------------------------- 1 | # Image32 2 | 3 | ## A 2D graphics library written in Delphi Pascal 4 | 5 | Image32 is a comprehensive 2D graphics library written entirely in Delphi Pascal, and without dependencies on other libraries. It provides an extensive range of image manipulation and drawing functions that includes text rendering through native parsing of truetype font files.
6 | 7 | ### Other significant features include 8 | 1. An extensive list of image manipulation functions 9 | 2. A polygon renderer that supports a very wide range of drawing options including tiled images, and linear and radial gradient fills 10 | 3. Cross-platform support using either Delphi's FMX framework or the Lazarus pascal compiler 11 | 12 | ### Documentation 13 | 14 | Extensive documentation can be found [**here**](http://www.angusj.com/image32/Docs/_Body.htm). 15 | 16 | ### Images & videos from demo sample applications 17 | 18 | ![Layers201](https://user-images.githubusercontent.com/5280692/170442888-f64c2a1b-c99d-46fa-8e76-210706b484b0.png)
19 | Layers201 video
20 | 21 | ![Layers301](https://user-images.githubusercontent.com/5280692/170441846-6a7d6817-f1c0-4b71-a424-d696f0cd7299.png)
22 | Layers301 video
23 | 24 | ![svg1](https://user-images.githubusercontent.com/5280692/170443316-f5c88659-c0cd-4e68-8933-ddcfd2aa4b8a.png)
25 | SVG101 video
26 | 27 | ![image32_text](https://github.com/user-attachments/assets/b37c5590-ea5d-49ec-b13c-6053986b181d)
28 | 29 | ![Vectorize](https://user-images.githubusercontent.com/5280692/180627317-5a10f862-6070-4753-ac3d-c714dfa4dc8f.png)
30 | Vectorize video
31 | 32 | ![drawing](https://github.com/user-attachments/assets/7682e9bf-bbc6-4ad0-8988-b5bf9eb982ab)
33 | Drawing video
34 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Image32/source/Clipper.inc: -------------------------------------------------------------------------------- 1 | 2 | /////////////////////////////////////////////////////////////////////////////// 3 | //USER DEFINED PREPROCESSOR DIRECTIVES 4 | /////////////////////////////////////////////////////////////////////////////// 5 | 6 | //For user defined Z-coordinates, defined in Clipper's 'SetZ' callback event 7 | {.$DEFINE USINGZ} 8 | 9 | /////////////////////////////////////////////////////////////////////////////// 10 | //COMPILER DEFINED PREPROCESSOR DIRECTIVES (ie. do not touch ;)) 11 | /////////////////////////////////////////////////////////////////////////////// 12 | 13 | {$IFDEF FPC} 14 | {$DEFINE INLINING} 15 | {$MODE DELPHI} 16 | {$ELSE} 17 | {$IF COMPILERVERSION < 14} 18 | Requires Delphi version 6 or above. 19 | {$IFEND} 20 | {$IF COMPILERVERSION >= 18} //Delphi 2007 21 | {$DEFINE RECORD_METHODS} 22 | {$DEFINE STRICT} 23 | {$IF COMPILERVERSION >= 19} //Delphi 2009 24 | //While "inlining" is supported from D2005, it's buggy (see QC41166) until D2009 25 | {$DEFINE INLINING} 26 | {$IF COMPILERVERSION >= 23} //Delphi XE2+ 27 | {$DEFINE XPLAT_GENERICS} 28 | {$DEFINE ROUNDINGMODE} 29 | {$IF COMPILERVERSION >= 24} //Delphi XE3+ 30 | {$LEGACYIFEND ON} 31 | {$IFEND} 32 | {$IFEND} 33 | {$IFEND} 34 | {$IFEND} 35 | {$ENDIF} 36 | 37 | {$IFDEF DEBUG} 38 | {$UNDEF INLINING} 39 | {$ENDIF} 40 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Image32/source/Img32.Panels.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SVGIconImageList/Image32/source/Img32.Panels.dcr -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/D11/SVGIconImageList.dpk: -------------------------------------------------------------------------------- 1 | package SVGIconImageList; 2 | 3 | {$INCLUDE ..\..\Source\SVGIconImageList.inc} 4 | {$R *.res} 5 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 6 | {$ALIGN 8} 7 | {$ASSERTIONS ON} 8 | {$BOOLEVAL OFF} 9 | {$DEBUGINFO OFF} 10 | {$EXTENDEDSYNTAX ON} 11 | {$IMPORTEDDATA ON} 12 | {$IOCHECKS ON} 13 | {$LOCALSYMBOLS OFF} 14 | {$LONGSTRINGS ON} 15 | {$OPENSTRINGS ON} 16 | {$OPTIMIZATION ON} 17 | {$OVERFLOWCHECKS OFF} 18 | {$RANGECHECKS OFF} 19 | {$REFERENCEINFO OFF} 20 | {$SAFEDIVIDE OFF} 21 | {$STACKFRAMES OFF} 22 | {$TYPEDADDRESS OFF} 23 | {$VARSTRINGCHECKS ON} 24 | {$WRITEABLECONST OFF} 25 | {$MINENUMSIZE 1} 26 | {$IMAGEBASE $400000} 27 | {$DEFINE RELEASE} 28 | {$ENDIF IMPLICITBUILDING} 29 | {$DESCRIPTION 'Ethea SVGIconImageList VCL components'} 30 | {$LIBSUFFIX AUTO} 31 | {$RUNONLY} 32 | {$IMPLICITBUILD OFF} 33 | 34 | requires 35 | vcl 36 | , VclSmp 37 | , vclwinx 38 | , RESTComponents 39 | , SVGIconImageListRestClient 40 | {$IFDEF Image32_SVGEngine} 41 | , SVGImage32Package 42 | {$ENDIF} 43 | {$IFDEF Skia_SVGEngine} 44 | , Skia.Package.VCL 45 | , Skia.Package.RTL 46 | {$ENDIF} 47 | ; 48 | 49 | contains 50 | SVGIconImage in '..\..\Source\SVGIconImage.pas', 51 | SVGIconImageList in '..\..\Source\SVGIconImageList.pas', 52 | SVGIconUtils in '..\..\Source\SVGIconUtils.pas', 53 | SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas', 54 | SVGIconItems in '..\..\Source\SVGIconItems.pas', 55 | SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas', 56 | SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas', 57 | {$IFDEF PreferNativeSvgSupport} 58 | D2DSVGFactory in '..\..\Source\D2DSVGFactory.pas', 59 | Winapi.D2DMissing in '..\..\Source\Winapi.D2DMissing.pas', 60 | {$ENDIF} 61 | {$IFDEF Image32_SVGEngine} 62 | Image32SVGFactory in '..\..\Source\Image32SVGFactory.pas', 63 | {$ENDIF} 64 | {$IFDEF Skia_SVGEngine} 65 | SkiaSVGFactory in '..\..\Source\SkiaSVGFactory.pas', 66 | {$ENDIF} 67 | SVGInterfaces in '..\..\Source\SVGInterfaces.pas', 68 | dlgExportPNG in '..\..\Source\dlgExportPNG.pas' {ExportToPNGDialog}; 69 | 70 | end. 71 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/D11/SVGIconImageListFMX.dpk: -------------------------------------------------------------------------------- 1 | package SVGIconImageListFMX; 2 | 3 | {$R *.res} 4 | {$INCLUDE ..\..\Source\SVGIconImageList.inc} 5 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 6 | {$ALIGN 8} 7 | {$ASSERTIONS ON} 8 | {$BOOLEVAL OFF} 9 | {$DEBUGINFO OFF} 10 | {$EXTENDEDSYNTAX ON} 11 | {$IMPORTEDDATA ON} 12 | {$IOCHECKS ON} 13 | {$LOCALSYMBOLS OFF} 14 | {$LONGSTRINGS ON} 15 | {$OPENSTRINGS ON} 16 | {$OPTIMIZATION ON} 17 | {$OVERFLOWCHECKS OFF} 18 | {$RANGECHECKS OFF} 19 | {$REFERENCEINFO OFF} 20 | {$SAFEDIVIDE OFF} 21 | {$STACKFRAMES OFF} 22 | {$TYPEDADDRESS OFF} 23 | {$VARSTRINGCHECKS ON} 24 | {$WRITEABLECONST OFF} 25 | {$MINENUMSIZE 1} 26 | {$IMAGEBASE $400000} 27 | {$DEFINE RELEASE} 28 | {$ENDIF IMPLICITBUILDING} 29 | {$DESCRIPTION 'Ethea SVGIconImageList FMX components'} 30 | {$LIBSUFFIX AUTO} 31 | {$RUNONLY} 32 | {$IMPLICITBUILD OFF} 33 | 34 | requires 35 | rtl 36 | , fmx 37 | {$IFDEF Image32_SVGEngine} 38 | , SVGImage32Package 39 | {$ENDIF} 40 | {$IFDEF Skia_SVGEngine} 41 | , Skia.Package.FMX 42 | , Skia.Package.RTL 43 | {$ENDIF} 44 | ; 45 | 46 | contains 47 | FMX.ImageSVG in '..\..\Source\FMX.ImageSVG.pas', 48 | {$IFDEF Image32_SVGEngine} 49 | Img32.FMX in '..\..\Image32\Source\Img32.FMX.pas', 50 | FMX.Image32SVG in '..\..\Source\FMX.Image32SVG.pas', 51 | {$ENDIF} 52 | {$IFDEF Skia_SVGEngine} 53 | FMX.ImageSkiaSVG in '..\..\Source\FMX.ImageSkiaSVG.pas', 54 | {$ENDIF} 55 | FMX.SVGIconImageList in '..\..\Source\FMX.SVGIconImageList.pas', 56 | FMX.SVGIconImage in '..\..\Source\FMX.SVGIconImage.pas', 57 | FMX.SVGIconsUtils in '..\..\Source\FMX.SVGIconsUtils.pas'; 58 | 59 | end. 60 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/D11/SVGIconImageListRestClient.dpk: -------------------------------------------------------------------------------- 1 | package SVGIconImageListRestClient; 2 | 3 | {$R *.res} 4 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 5 | {$ALIGN 8} 6 | {$ASSERTIONS ON} 7 | {$BOOLEVAL OFF} 8 | {$DEBUGINFO OFF} 9 | {$EXTENDEDSYNTAX ON} 10 | {$IMPORTEDDATA ON} 11 | {$IOCHECKS ON} 12 | {$LOCALSYMBOLS OFF} 13 | {$LONGSTRINGS ON} 14 | {$OPENSTRINGS ON} 15 | {$OPTIMIZATION ON} 16 | {$OVERFLOWCHECKS OFF} 17 | {$RANGECHECKS OFF} 18 | {$REFERENCEINFO OFF} 19 | {$SAFEDIVIDE OFF} 20 | {$STACKFRAMES OFF} 21 | {$TYPEDADDRESS OFF} 22 | {$VARSTRINGCHECKS ON} 23 | {$WRITEABLECONST OFF} 24 | {$MINENUMSIZE 1} 25 | {$IMAGEBASE $400000} 26 | {$DEFINE RELEASE} 27 | {$ENDIF IMPLICITBUILDING} 28 | {$DESCRIPTION 'Ethea SVGIconImageList REST Client services'} 29 | {$LIBSUFFIX AUTO} 30 | {$RUNONLY} 31 | {$IMPLICITBUILD OFF} 32 | 33 | requires 34 | rtl, 35 | RESTComponents; 36 | 37 | contains 38 | Browser.IconifyApi in '..\..\Source\Browser.IconifyApi.pas'; 39 | 40 | end. 41 | 42 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/D11/SVGImage32Package.dpk: -------------------------------------------------------------------------------- 1 | package SVGImage32Package; 2 | 3 | {$R *.res} 4 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 5 | {$ALIGN 8} 6 | {$ASSERTIONS ON} 7 | {$BOOLEVAL OFF} 8 | {$DEBUGINFO OFF} 9 | {$EXTENDEDSYNTAX ON} 10 | {$IMPORTEDDATA ON} 11 | {$IOCHECKS ON} 12 | {$LOCALSYMBOLS OFF} 13 | {$LONGSTRINGS ON} 14 | {$OPENSTRINGS ON} 15 | {$OPTIMIZATION ON} 16 | {$OVERFLOWCHECKS OFF} 17 | {$RANGECHECKS OFF} 18 | {$REFERENCEINFO OFF} 19 | {$SAFEDIVIDE OFF} 20 | {$STACKFRAMES OFF} 21 | {$TYPEDADDRESS OFF} 22 | {$VARSTRINGCHECKS ON} 23 | {$WRITEABLECONST OFF} 24 | {$MINENUMSIZE 1} 25 | {$IMAGEBASE $400000} 26 | {$DEFINE RELEASE} 27 | {$ENDIF IMPLICITBUILDING} 28 | {$DESCRIPTION 'Image32 2D Graphic Library - Copyright Angus Johnson'} 29 | {$LIBSUFFIX AUTO} 30 | {$RUNONLY} 31 | {$IMPLICITBUILD OFF} 32 | 33 | requires 34 | rtl, 35 | vcl, 36 | vclimg; 37 | 38 | contains 39 | Img32 in '..\..\Image32\source\Img32.pas', 40 | Img32.Fmt.BMP in '..\..\Image32\source\Img32.Fmt.BMP.pas', 41 | Img32.Panels in '..\..\Image32\source\Img32.Panels.pas', 42 | Img32.Fmt.PNG in '..\..\Image32\source\Img32.Fmt.PNG.pas', 43 | Img32.CQ in '..\..\Image32\source\Img32.CQ.pas', 44 | Img32.Draw in '..\..\Image32\source\Img32.Draw.pas', 45 | Img32.Extra in '..\..\Image32\source\Img32.Extra.pas', 46 | Img32.Layers in '..\..\Image32\source\Img32.Layers.pas', 47 | Img32.Resamplers in '..\..\Image32\source\Img32.Resamplers.pas', 48 | Img32.Transform in '..\..\Image32\source\Img32.Transform.pas', 49 | Img32.Text in '..\..\Image32\source\Img32.Text.pas', 50 | Img32.Vector in '..\..\Image32\source\Img32.Vector.pas', 51 | Img32.Fmt.SVG in '..\..\Image32\source\Img32.Fmt.SVG.pas', 52 | Img32.Storage in '..\..\Image32\source\Img32.Storage.pas', 53 | Img32.SVG.Core in '..\..\Image32\source\Img32.SVG.Core.pas', 54 | Img32.SVG.Path in '..\..\Image32\source\Img32.SVG.Path.pas', 55 | Img32.SVG.Reader in '..\..\Image32\source\Img32.SVG.Reader.pas', 56 | Img32.Clipper2 in '..\..\Image32\Source\Img32.Clipper2.pas', 57 | Clipper in '..\..\Image32\source\Clipper.pas', 58 | Clipper.Core in '..\..\Image32\source\Clipper.Core.pas', 59 | Clipper.Engine in '..\..\Image32\source\Clipper.Engine.pas', 60 | Clipper.Minkowski in '..\..\Image32\source\Clipper.Minkowski.pas', 61 | Clipper.Offset in '..\..\Image32\source\Clipper.Offset.pas', 62 | Clipper.RectClip in '..\..\Image32\source\Clipper.RectClip.pas'; 63 | 64 | end. 65 | 66 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/D11/dclSVGIconImageList.dpk: -------------------------------------------------------------------------------- 1 | package dclSVGIconImageList; 2 | 3 | {$R *.res} 4 | {$R '..\SVGIconImageListNew.dcr'} 5 | {$R '..\..\Image32\Source\Img32.Panels.dcr'} 6 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 7 | {$ALIGN 8} 8 | {$ASSERTIONS ON} 9 | {$BOOLEVAL OFF} 10 | {$DEBUGINFO OFF} 11 | {$EXTENDEDSYNTAX ON} 12 | {$IMPORTEDDATA ON} 13 | {$IOCHECKS ON} 14 | {$LOCALSYMBOLS OFF} 15 | {$LONGSTRINGS ON} 16 | {$OPENSTRINGS ON} 17 | {$OPTIMIZATION ON} 18 | {$OVERFLOWCHECKS OFF} 19 | {$RANGECHECKS OFF} 20 | {$REFERENCEINFO OFF} 21 | {$SAFEDIVIDE OFF} 22 | {$STACKFRAMES OFF} 23 | {$TYPEDADDRESS OFF} 24 | {$VARSTRINGCHECKS ON} 25 | {$WRITEABLECONST OFF} 26 | {$MINENUMSIZE 1} 27 | {$IMAGEBASE $400000} 28 | {$DEFINE RELEASE} 29 | {$ENDIF IMPLICITBUILDING} 30 | {$DESCRIPTION 'Ethea SVGIconImageList VCL components'} 31 | {$LIBSUFFIX AUTO} 32 | {$DESIGNONLY} 33 | {$IMPLICITBUILD OFF} 34 | 35 | requires 36 | DesignIDE, 37 | SVGIconImageList; 38 | 39 | contains 40 | SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor}, 41 | SVGIconImageRegister in '..\SVGIconImageRegister.pas', 42 | SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm}, 43 | SVGRESTClientFormUnit in '..\SVGRESTClientFormUnit.pas' {SVGRESTClientSearchForm}, 44 | SVGIconSetFormUnit in '..\SVGIconSetFormUnit.pas' {SVGIconSetForm}; 45 | 46 | end. 47 | 48 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/D11/dclSVGIconImageListFMX.dpk: -------------------------------------------------------------------------------- 1 | package dclSVGIconImageListFMX; 2 | 3 | {$R *.res} 4 | {$R '..\SVGIconImageListNew.dcr'} 5 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 6 | {$ALIGN 8} 7 | {$ASSERTIONS ON} 8 | {$BOOLEVAL OFF} 9 | {$DEBUGINFO OFF} 10 | {$EXTENDEDSYNTAX ON} 11 | {$IMPORTEDDATA ON} 12 | {$IOCHECKS ON} 13 | {$LOCALSYMBOLS OFF} 14 | {$LONGSTRINGS ON} 15 | {$OPENSTRINGS ON} 16 | {$OPTIMIZATION ON} 17 | {$OVERFLOWCHECKS OFF} 18 | {$RANGECHECKS OFF} 19 | {$REFERENCEINFO OFF} 20 | {$SAFEDIVIDE OFF} 21 | {$STACKFRAMES OFF} 22 | {$TYPEDADDRESS OFF} 23 | {$VARSTRINGCHECKS ON} 24 | {$WRITEABLECONST OFF} 25 | {$MINENUMSIZE 1} 26 | {$IMAGEBASE $400000} 27 | {$DEFINE RELEASE} 28 | {$ENDIF IMPLICITBUILDING} 29 | {$DESCRIPTION 'Ethea SVGIconImageList FMX components'} 30 | {$LIBSUFFIX AUTO} 31 | {$DESIGNONLY} 32 | {$IMPLICITBUILD OFF} 33 | 34 | requires 35 | DesignIDE, 36 | dclfmxstd, 37 | SVGIconImageListRestClient, 38 | SVGIconImageListFMX; 39 | 40 | contains 41 | FMX.SVGIconImageRegister in '..\FMX.SVGIconImageRegister.pas', 42 | FMX.SVGIconImageListEditorUnit in '..\FMX.SVGIconImageListEditorUnit.pas' {SVGIconImageListEditorFMX}, 43 | FMX.SVGTextPropertyEditorUnit in '..\FMX.SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorFormFMX}, 44 | FMX.SVGRESTClientFormUnit in '..\FMX.SVGRESTClientFormUnit.pas' {SVGRESTClientSearchForm}; 45 | 46 | end. 47 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/D12/SVGIconImageList.dpk: -------------------------------------------------------------------------------- 1 | package SVGIconImageList; 2 | 3 | {$INCLUDE ..\..\Source\SVGIconImageList.inc} 4 | {$R *.res} 5 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 6 | {$ALIGN 8} 7 | {$ASSERTIONS ON} 8 | {$BOOLEVAL OFF} 9 | {$DEBUGINFO OFF} 10 | {$EXTENDEDSYNTAX ON} 11 | {$IMPORTEDDATA ON} 12 | {$IOCHECKS ON} 13 | {$LOCALSYMBOLS OFF} 14 | {$LONGSTRINGS ON} 15 | {$OPENSTRINGS ON} 16 | {$OPTIMIZATION ON} 17 | {$OVERFLOWCHECKS OFF} 18 | {$RANGECHECKS OFF} 19 | {$REFERENCEINFO OFF} 20 | {$SAFEDIVIDE OFF} 21 | {$STACKFRAMES OFF} 22 | {$TYPEDADDRESS OFF} 23 | {$VARSTRINGCHECKS ON} 24 | {$WRITEABLECONST OFF} 25 | {$MINENUMSIZE 1} 26 | {$IMAGEBASE $400000} 27 | {$DEFINE RELEASE} 28 | {$ENDIF IMPLICITBUILDING} 29 | {$DESCRIPTION 'Ethea SVGIconImageList VCL components'} 30 | {$LIBSUFFIX AUTO} 31 | {$RUNONLY} 32 | {$IMPLICITBUILD OFF} 33 | 34 | requires 35 | vcl 36 | , VclSmp 37 | , vclwinx 38 | , RESTComponents 39 | , SVGIconImageListRestClient 40 | {$IFDEF Image32_SVGEngine} 41 | , SVGImage32Package 42 | {$ENDIF} 43 | {$IFDEF Skia_SVGEngine} 44 | , Skia.Package.VCL 45 | , Skia.Package.RTL 46 | {$ENDIF} 47 | ; 48 | 49 | contains 50 | SVGIconImage in '..\..\Source\SVGIconImage.pas', 51 | SVGIconImageList in '..\..\Source\SVGIconImageList.pas', 52 | SVGIconUtils in '..\..\Source\SVGIconUtils.pas', 53 | SVGIconImageCollection in '..\..\Source\SVGIconImageCollection.pas', 54 | SVGIconItems in '..\..\Source\SVGIconItems.pas', 55 | SVGIconVirtualImageList in '..\..\Source\SVGIconVirtualImageList.pas', 56 | SVGIconImageListBase in '..\..\Source\SVGIconImageListBase.pas', 57 | {$IFDEF PreferNativeSvgSupport} 58 | D2DSVGFactory in '..\..\Source\D2DSVGFactory.pas', 59 | Winapi.D2DMissing in '..\..\Source\Winapi.D2DMissing.pas', 60 | {$ENDIF} 61 | {$IFDEF Image32_SVGEngine} 62 | Image32SVGFactory in '..\..\Source\Image32SVGFactory.pas', 63 | {$ENDIF} 64 | {$IFDEF Skia_SVGEngine} 65 | SkiaSVGFactory in '..\..\Source\SkiaSVGFactory.pas', 66 | {$ENDIF} 67 | SVGInterfaces in '..\..\Source\SVGInterfaces.pas', 68 | dlgExportPNG in '..\..\Source\dlgExportPNG.pas' {ExportToPNGDialog}; 69 | 70 | end. 71 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/D12/SVGIconImageListFMX.dpk: -------------------------------------------------------------------------------- 1 | package SVGIconImageListFMX; 2 | 3 | {$R *.res} 4 | {$INCLUDE ..\..\Source\SVGIconImageList.inc} 5 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 6 | {$ALIGN 8} 7 | {$ASSERTIONS ON} 8 | {$BOOLEVAL OFF} 9 | {$DEBUGINFO OFF} 10 | {$EXTENDEDSYNTAX ON} 11 | {$IMPORTEDDATA ON} 12 | {$IOCHECKS ON} 13 | {$LOCALSYMBOLS OFF} 14 | {$LONGSTRINGS ON} 15 | {$OPENSTRINGS ON} 16 | {$OPTIMIZATION ON} 17 | {$OVERFLOWCHECKS OFF} 18 | {$RANGECHECKS OFF} 19 | {$REFERENCEINFO OFF} 20 | {$SAFEDIVIDE OFF} 21 | {$STACKFRAMES OFF} 22 | {$TYPEDADDRESS OFF} 23 | {$VARSTRINGCHECKS ON} 24 | {$WRITEABLECONST OFF} 25 | {$MINENUMSIZE 1} 26 | {$IMAGEBASE $400000} 27 | {$DEFINE RELEASE} 28 | {$ENDIF IMPLICITBUILDING} 29 | {$DESCRIPTION 'Ethea SVGIconImageList FMX components'} 30 | {$LIBSUFFIX AUTO} 31 | {$RUNONLY} 32 | {$IMPLICITBUILD OFF} 33 | 34 | requires 35 | rtl 36 | , fmx 37 | {$IFDEF Image32_SVGEngine} 38 | , SVGImage32Package 39 | {$ENDIF} 40 | {$IFDEF Skia_SVGEngine} 41 | , Skia.Package.FMX 42 | , Skia.Package.RTL 43 | {$ENDIF} 44 | ; 45 | 46 | contains 47 | FMX.ImageSVG in '..\..\Source\FMX.ImageSVG.pas', 48 | {$IFDEF Image32_SVGEngine} 49 | Img32.FMX in '..\..\Image32\Source\Img32.FMX.pas', 50 | FMX.Image32SVG in '..\..\Source\FMX.Image32SVG.pas', 51 | {$ENDIF} 52 | {$IFDEF Skia_SVGEngine} 53 | FMX.ImageSkiaSVG in '..\..\Source\FMX.ImageSkiaSVG.pas', 54 | {$ENDIF} 55 | FMX.SVGIconImageList in '..\..\Source\FMX.SVGIconImageList.pas', 56 | FMX.SVGIconImage in '..\..\Source\FMX.SVGIconImage.pas', 57 | FMX.SVGIconsUtils in '..\..\Source\FMX.SVGIconsUtils.pas'; 58 | 59 | end. 60 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/D12/SVGIconImageListRestClient.dpk: -------------------------------------------------------------------------------- 1 | package SVGIconImageListRestClient; 2 | 3 | {$R *.res} 4 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 5 | {$ALIGN 8} 6 | {$ASSERTIONS ON} 7 | {$BOOLEVAL OFF} 8 | {$DEBUGINFO OFF} 9 | {$EXTENDEDSYNTAX ON} 10 | {$IMPORTEDDATA ON} 11 | {$IOCHECKS ON} 12 | {$LOCALSYMBOLS OFF} 13 | {$LONGSTRINGS ON} 14 | {$OPENSTRINGS ON} 15 | {$OPTIMIZATION ON} 16 | {$OVERFLOWCHECKS OFF} 17 | {$RANGECHECKS OFF} 18 | {$REFERENCEINFO OFF} 19 | {$SAFEDIVIDE OFF} 20 | {$STACKFRAMES OFF} 21 | {$TYPEDADDRESS OFF} 22 | {$VARSTRINGCHECKS ON} 23 | {$WRITEABLECONST OFF} 24 | {$MINENUMSIZE 1} 25 | {$IMAGEBASE $400000} 26 | {$DEFINE RELEASE} 27 | {$ENDIF IMPLICITBUILDING} 28 | {$DESCRIPTION 'Ethea SVGIconImageList REST Client services'} 29 | {$LIBSUFFIX AUTO} 30 | {$RUNONLY} 31 | {$IMPLICITBUILD OFF} 32 | 33 | requires 34 | rtl, 35 | RESTComponents; 36 | 37 | contains 38 | Browser.IconifyApi in '..\..\Source\Browser.IconifyApi.pas'; 39 | 40 | end. 41 | 42 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/D12/SVGImage32Package.dpk: -------------------------------------------------------------------------------- 1 | package SVGImage32Package; 2 | 3 | {$R *.res} 4 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 5 | {$ALIGN 8} 6 | {$ASSERTIONS ON} 7 | {$BOOLEVAL OFF} 8 | {$DEBUGINFO OFF} 9 | {$EXTENDEDSYNTAX ON} 10 | {$IMPORTEDDATA ON} 11 | {$IOCHECKS ON} 12 | {$LOCALSYMBOLS OFF} 13 | {$LONGSTRINGS ON} 14 | {$OPENSTRINGS ON} 15 | {$OPTIMIZATION ON} 16 | {$OVERFLOWCHECKS OFF} 17 | {$RANGECHECKS OFF} 18 | {$REFERENCEINFO OFF} 19 | {$SAFEDIVIDE OFF} 20 | {$STACKFRAMES OFF} 21 | {$TYPEDADDRESS OFF} 22 | {$VARSTRINGCHECKS ON} 23 | {$WRITEABLECONST OFF} 24 | {$MINENUMSIZE 1} 25 | {$IMAGEBASE $400000} 26 | {$DEFINE RELEASE} 27 | {$ENDIF IMPLICITBUILDING} 28 | {$DESCRIPTION 'Image32 2D Graphic Library - Copyright Angus Johnson'} 29 | {$LIBSUFFIX AUTO} 30 | {$RUNONLY} 31 | {$IMPLICITBUILD OFF} 32 | 33 | requires 34 | rtl, 35 | vcl, 36 | vclimg; 37 | 38 | contains 39 | Img32 in '..\..\Image32\source\Img32.pas', 40 | Img32.Fmt.BMP in '..\..\Image32\source\Img32.Fmt.BMP.pas', 41 | Img32.Panels in '..\..\Image32\source\Img32.Panels.pas', 42 | Img32.Fmt.PNG in '..\..\Image32\source\Img32.Fmt.PNG.pas', 43 | Img32.CQ in '..\..\Image32\source\Img32.CQ.pas', 44 | Img32.Draw in '..\..\Image32\source\Img32.Draw.pas', 45 | Img32.Extra in '..\..\Image32\source\Img32.Extra.pas', 46 | Img32.Layers in '..\..\Image32\source\Img32.Layers.pas', 47 | Img32.Resamplers in '..\..\Image32\source\Img32.Resamplers.pas', 48 | Img32.Transform in '..\..\Image32\source\Img32.Transform.pas', 49 | Img32.Text in '..\..\Image32\source\Img32.Text.pas', 50 | Img32.Vector in '..\..\Image32\source\Img32.Vector.pas', 51 | Img32.Fmt.SVG in '..\..\Image32\source\Img32.Fmt.SVG.pas', 52 | Img32.Storage in '..\..\Image32\source\Img32.Storage.pas', 53 | Img32.SVG.Core in '..\..\Image32\source\Img32.SVG.Core.pas', 54 | Img32.SVG.Path in '..\..\Image32\source\Img32.SVG.Path.pas', 55 | Img32.SVG.Reader in '..\..\Image32\source\Img32.SVG.Reader.pas', 56 | Img32.Clipper2 in '..\..\Image32\Source\Img32.Clipper2.pas', 57 | Clipper in '..\..\Image32\source\Clipper.pas', 58 | Clipper.Core in '..\..\Image32\source\Clipper.Core.pas', 59 | Clipper.Engine in '..\..\Image32\source\Clipper.Engine.pas', 60 | Clipper.Minkowski in '..\..\Image32\source\Clipper.Minkowski.pas', 61 | Clipper.Offset in '..\..\Image32\source\Clipper.Offset.pas', 62 | Clipper.RectClip in '..\..\Image32\source\Clipper.RectClip.pas'; 63 | 64 | end. 65 | 66 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/D12/dclSVGIconImageList.dpk: -------------------------------------------------------------------------------- 1 | package dclSVGIconImageList; 2 | 3 | {$R *.res} 4 | {$R '..\SVGIconImageListNew.dcr'} 5 | {$R '..\..\Image32\Source\Img32.Panels.dcr'} 6 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 7 | {$ALIGN 8} 8 | {$ASSERTIONS ON} 9 | {$BOOLEVAL OFF} 10 | {$DEBUGINFO OFF} 11 | {$EXTENDEDSYNTAX ON} 12 | {$IMPORTEDDATA ON} 13 | {$IOCHECKS ON} 14 | {$LOCALSYMBOLS OFF} 15 | {$LONGSTRINGS ON} 16 | {$OPENSTRINGS ON} 17 | {$OPTIMIZATION ON} 18 | {$OVERFLOWCHECKS OFF} 19 | {$RANGECHECKS OFF} 20 | {$REFERENCEINFO OFF} 21 | {$SAFEDIVIDE OFF} 22 | {$STACKFRAMES OFF} 23 | {$TYPEDADDRESS OFF} 24 | {$VARSTRINGCHECKS ON} 25 | {$WRITEABLECONST OFF} 26 | {$MINENUMSIZE 1} 27 | {$IMAGEBASE $400000} 28 | {$DEFINE RELEASE} 29 | {$ENDIF IMPLICITBUILDING} 30 | {$DESCRIPTION 'Ethea SVGIconImageList VCL components'} 31 | {$LIBSUFFIX AUTO} 32 | {$DESIGNONLY} 33 | {$IMPLICITBUILD OFF} 34 | 35 | requires 36 | DesignIDE, 37 | SVGIconImageList; 38 | 39 | contains 40 | SVGIconImageListEditorUnit in '..\SVGIconImageListEditorUnit.pas' {SVGIconImageListEditor}, 41 | SVGIconImageRegister in '..\SVGIconImageRegister.pas', 42 | SVGTextPropertyEditorUnit in '..\SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorForm}, 43 | SVGRESTClientFormUnit in '..\SVGRESTClientFormUnit.pas' {SVGRESTClientSearchForm}, 44 | SVGIconSetFormUnit in '..\SVGIconSetFormUnit.pas' {SVGIconSetForm}; 45 | 46 | end. 47 | 48 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/D12/dclSVGIconImageListFMX.dpk: -------------------------------------------------------------------------------- 1 | package dclSVGIconImageListFMX; 2 | 3 | {$R *.res} 4 | {$R '..\SVGIconImageListNew.dcr'} 5 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 6 | {$ALIGN 8} 7 | {$ASSERTIONS ON} 8 | {$BOOLEVAL OFF} 9 | {$DEBUGINFO OFF} 10 | {$EXTENDEDSYNTAX ON} 11 | {$IMPORTEDDATA ON} 12 | {$IOCHECKS ON} 13 | {$LOCALSYMBOLS OFF} 14 | {$LONGSTRINGS ON} 15 | {$OPENSTRINGS ON} 16 | {$OPTIMIZATION ON} 17 | {$OVERFLOWCHECKS OFF} 18 | {$RANGECHECKS OFF} 19 | {$REFERENCEINFO OFF} 20 | {$SAFEDIVIDE OFF} 21 | {$STACKFRAMES OFF} 22 | {$TYPEDADDRESS OFF} 23 | {$VARSTRINGCHECKS ON} 24 | {$WRITEABLECONST OFF} 25 | {$MINENUMSIZE 1} 26 | {$IMAGEBASE $400000} 27 | {$DEFINE RELEASE} 28 | {$ENDIF IMPLICITBUILDING} 29 | {$DESCRIPTION 'Ethea SVGIconImageList FMX components'} 30 | {$LIBSUFFIX AUTO} 31 | {$DESIGNONLY} 32 | {$IMPLICITBUILD OFF} 33 | 34 | requires 35 | DesignIDE, 36 | dclfmxstd, 37 | SVGIconImageListRestClient, 38 | SVGIconImageListFMX; 39 | 40 | contains 41 | FMX.SVGIconImageRegister in '..\FMX.SVGIconImageRegister.pas', 42 | FMX.SVGIconImageListEditorUnit in '..\FMX.SVGIconImageListEditorUnit.pas' {SVGIconImageListEditorFMX}, 43 | FMX.SVGTextPropertyEditorUnit in '..\FMX.SVGTextPropertyEditorUnit.pas' {SVGTextPropertyEditorFormFMX}, 44 | FMX.SVGRESTClientFormUnit in '..\FMX.SVGRESTClientFormUnit.pas' {SVGRESTClientSearchForm}; 45 | 46 | end. 47 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/GetItLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SVGIconImageList/Packages/GetItLogo.png -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/SVGIconImageCollectionComponentIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SVGIconImageList/Packages/SVGIconImageCollectionComponentIcon.png -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/SVGIconImageComponentIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SVGIconImageList/Packages/SVGIconImageComponentIcon.png -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/SVGIconImageList.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SVGIconImageList/Packages/SVGIconImageList.dcr -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/SVGIconImageListComponentIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SVGIconImageList/Packages/SVGIconImageListComponentIcon.png -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/SVGIconImageListNew.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SVGIconImageList/Packages/SVGIconImageListNew.dcr -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/SVGIconVirtualImageListComponentIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SVGIconImageList/Packages/SVGIconVirtualImageListComponentIcon.png -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Packages/SvgIconImageListSplash.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SVGIconImageList/Packages/SvgIconImageListSplash.res -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Source/FMX.SVGIconsUtils.pas: -------------------------------------------------------------------------------- 1 | {******************************************************************************} 2 | { } 3 | { SVGIconImageList: An extended ImageList for Delphi/FMX } 4 | { to simplify use of SVG Icons (resize, opacity and more...) } 5 | { } 6 | { Copyright (c) 2019-2025 (Ethea S.r.l.) } 7 | { Author: Carlo Barazzetta } 8 | { Contributors: } 9 | { } 10 | { https://github.com/EtheaDev/SVGIconImageList } 11 | { } 12 | {******************************************************************************} 13 | { } 14 | { Licensed under the Apache License, Version 2.0 (the "License"); } 15 | { you may not use this file except in compliance with the License. } 16 | { You may obtain a copy of the License at } 17 | { } 18 | { http://www.apache.org/licenses/LICENSE-2.0 } 19 | { } 20 | { Unless required by applicable law or agreed to in writing, software } 21 | { distributed under the License is distributed on an "AS IS" BASIS, } 22 | { WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. } 23 | { See the License for the specific language governing permissions and } 24 | { limitations under the License. } 25 | { } 26 | {******************************************************************************} 27 | unit FMX.SVGIconsUtils; 28 | 29 | interface 30 | 31 | Uses 32 | System.Types 33 | , FMX.ListBox 34 | ; 35 | 36 | function UpdateSVGIconListView(const AListBox: TListBox): Integer; 37 | 38 | implementation 39 | 40 | uses 41 | FMX.SVGIconImageList 42 | , System.SysUtils 43 | , System.Classes 44 | ; 45 | 46 | function UpdateSVGIconListView(const AListBox: TListBox): Integer; 47 | var 48 | I: Integer; 49 | LItem: TSVGIconSourceItem; 50 | LListItem: TListBoxItem; 51 | LSVGIconImageList: TSVGIconImageList; 52 | begin 53 | LSVGIconImageList := AListBox.Images as TSVGIconImageList; 54 | 55 | AListBox.Items.BeginUpdate; 56 | try 57 | AListBox.Clear; 58 | Result := LSVGIconImageList.Source.Count; 59 | for I := 0 to Result -1 do 60 | begin 61 | LItem := LSVGIconImageList.Source.Items[I] as TSVGIconSourceItem; 62 | LListItem := TListBoxItem.Create(AListBox); 63 | LListItem.StyleLookup := 'CustomListBoxItemStyle'; 64 | LListItem.Text := Format('%d.%s', [LItem.Index,Litem.IconName]); 65 | LListItem.ImageIndex := I; 66 | 67 | AListBox.AddObject(LListItem); 68 | end; 69 | finally 70 | AListBox.Items.EndUpdate; 71 | end; 72 | end; 73 | 74 | end. 75 | -------------------------------------------------------------------------------- /Ext/SVGIconImageList/Source/SVGIconImageList.inc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SVGIconImageList/Source/SVGIconImageList.inc -------------------------------------------------------------------------------- /Ext/StyledComponents/packages/D11/dclStyledComponents.dpk: -------------------------------------------------------------------------------- 1 | {******************************************************************************} 2 | { } 3 | { StyledComponents: a set of Styled VCL Component } 4 | { } 5 | { Copyright (c) 2022-2025 (Ethea S.r.l.) } 6 | { Author: Carlo Barazzetta } 7 | { Contributors: } 8 | { } 9 | { https://github.com/EtheaDev/StyledComponents } 10 | { } 11 | {******************************************************************************} 12 | { } 13 | { Licensed under the Apache License, Version 2.0 (the "License"); } 14 | { you may not use this file except in compliance with the License. } 15 | { You may obtain a copy of the License at } 16 | { } 17 | { http://www.apache.org/licenses/LICENSE-2.0 } 18 | { } 19 | { Unless required by applicable law or agreed to in writing, software } 20 | { distributed under the License is distributed on an "AS IS" BASIS, } 21 | { WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. } 22 | { See the License for the specific language governing permissions and } 23 | { limitations under the License. } 24 | { } 25 | {******************************************************************************} 26 | package dclStyledComponents; 27 | 28 | {$R *.res} 29 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 30 | {$ALIGN 8} 31 | {$ASSERTIONS ON} 32 | {$BOOLEVAL OFF} 33 | {$DEBUGINFO OFF} 34 | {$EXTENDEDSYNTAX ON} 35 | {$IMPORTEDDATA ON} 36 | {$IOCHECKS ON} 37 | {$LOCALSYMBOLS OFF} 38 | {$LONGSTRINGS ON} 39 | {$OPENSTRINGS ON} 40 | {$OPTIMIZATION ON} 41 | {$OVERFLOWCHECKS OFF} 42 | {$RANGECHECKS OFF} 43 | {$REFERENCEINFO OFF} 44 | {$SAFEDIVIDE OFF} 45 | {$STACKFRAMES OFF} 46 | {$TYPEDADDRESS OFF} 47 | {$VARSTRINGCHECKS ON} 48 | {$WRITEABLECONST OFF} 49 | {$MINENUMSIZE 1} 50 | {$IMAGEBASE $400000} 51 | {$DEFINE RELEASE} 52 | {$ENDIF IMPLICITBUILDING} 53 | {$DESCRIPTION 'Ethea Styled Components Library'} 54 | {$LIBSUFFIX AUTO} 55 | {$DESIGNONLY} 56 | {$IMPLICITBUILD OFF} 57 | 58 | requires 59 | DesignIDE, 60 | StyledComponents; 61 | 62 | contains 63 | Vcl.StyledComponentsRegister in '..\Vcl.StyledComponentsRegister.pas', 64 | Vcl.StyledButtonEditorUnit in '..\Vcl.StyledButtonEditorUnit.pas' {StyledButtonEditor}; 65 | 66 | end. 67 | -------------------------------------------------------------------------------- /Ext/StyledComponents/packages/D12/dclStyledComponents.dpk: -------------------------------------------------------------------------------- 1 | {******************************************************************************} 2 | { } 3 | { StyledComponents: a set of Styled VCL Component } 4 | { } 5 | { Copyright (c) 2022-2025 (Ethea S.r.l.) } 6 | { Author: Carlo Barazzetta } 7 | { Contributors: } 8 | { } 9 | { https://github.com/EtheaDev/StyledComponents } 10 | { } 11 | {******************************************************************************} 12 | { } 13 | { Licensed under the Apache License, Version 2.0 (the "License"); } 14 | { you may not use this file except in compliance with the License. } 15 | { You may obtain a copy of the License at } 16 | { } 17 | { http://www.apache.org/licenses/LICENSE-2.0 } 18 | { } 19 | { Unless required by applicable law or agreed to in writing, software } 20 | { distributed under the License is distributed on an "AS IS" BASIS, } 21 | { WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. } 22 | { See the License for the specific language governing permissions and } 23 | { limitations under the License. } 24 | { } 25 | {******************************************************************************} 26 | package dclStyledComponents; 27 | 28 | {$R *.res} 29 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 30 | {$ALIGN 8} 31 | {$ASSERTIONS ON} 32 | {$BOOLEVAL OFF} 33 | {$DEBUGINFO OFF} 34 | {$EXTENDEDSYNTAX ON} 35 | {$IMPORTEDDATA ON} 36 | {$IOCHECKS ON} 37 | {$LOCALSYMBOLS OFF} 38 | {$LONGSTRINGS ON} 39 | {$OPENSTRINGS ON} 40 | {$OPTIMIZATION ON} 41 | {$OVERFLOWCHECKS OFF} 42 | {$RANGECHECKS OFF} 43 | {$REFERENCEINFO OFF} 44 | {$SAFEDIVIDE OFF} 45 | {$STACKFRAMES OFF} 46 | {$TYPEDADDRESS OFF} 47 | {$VARSTRINGCHECKS ON} 48 | {$WRITEABLECONST OFF} 49 | {$MINENUMSIZE 1} 50 | {$IMAGEBASE $400000} 51 | {$DEFINE RELEASE} 52 | {$ENDIF IMPLICITBUILDING} 53 | {$DESCRIPTION 'Ethea Styled Components Library'} 54 | {$LIBSUFFIX AUTO} 55 | {$DESIGNONLY} 56 | {$IMPLICITBUILD OFF} 57 | 58 | requires 59 | DesignIDE, 60 | StyledComponents; 61 | 62 | contains 63 | Vcl.StyledComponentsRegister in '..\Vcl.StyledComponentsRegister.pas', 64 | Vcl.StyledButtonEditorUnit in '..\Vcl.StyledButtonEditorUnit.pas' {StyledButtonEditor}; 65 | 66 | end. 67 | -------------------------------------------------------------------------------- /Ext/StyledComponents/packages/StyledAnimatedButton.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/packages/StyledAnimatedButton.dcr -------------------------------------------------------------------------------- /Ext/StyledComponents/packages/StyledAnimatedTaskDialog.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/packages/StyledAnimatedTaskDialog.dcr -------------------------------------------------------------------------------- /Ext/StyledComponents/packages/StyledAnimatedToolBar.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/packages/StyledAnimatedToolBar.dcr -------------------------------------------------------------------------------- /Ext/StyledComponents/packages/StyledButton.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/packages/StyledButton.dcr -------------------------------------------------------------------------------- /Ext/StyledComponents/packages/StyledButtonGroup.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/packages/StyledButtonGroup.dcr -------------------------------------------------------------------------------- /Ext/StyledComponents/packages/StyledCategoryButtons.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/packages/StyledCategoryButtons.dcr -------------------------------------------------------------------------------- /Ext/StyledComponents/packages/StyledComponentsSplash.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/packages/StyledComponentsSplash.res -------------------------------------------------------------------------------- /Ext/StyledComponents/packages/StyledDbNavigator.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/packages/StyledDbNavigator.dcr -------------------------------------------------------------------------------- /Ext/StyledComponents/packages/StyledTaskDialog.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/packages/StyledTaskDialog.dcr -------------------------------------------------------------------------------- /Ext/StyledComponents/packages/StyledToolBar.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/packages/StyledToolBar.dcr -------------------------------------------------------------------------------- /Ext/StyledComponents/source/Animations.RES: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/source/Animations.RES -------------------------------------------------------------------------------- /Ext/StyledComponents/source/Animations.rc: -------------------------------------------------------------------------------- 1 | LOTTIE_INFORMATION RCDATA "..\Animations\information.json" 2 | LOTTIE_CUSTOM RCDATA "..\Animations\custom.json" 3 | LOTTIE_ERROR RCDATA "..\Animations\error.json" 4 | LOTTIE_WARNING RCDATA "..\Animations\warning.json" 5 | LOTTIE_SHIELD RCDATA "..\Animations\shield.json" 6 | LOTTIE_NOTIFY RCDATA "..\Animations\notify.json" 7 | LOTTIE_QUESTION RCDATA "..\Animations\question.json" -------------------------------------------------------------------------------- /Ext/StyledComponents/source/BuildResFileOfAnimations.cmd: -------------------------------------------------------------------------------- 1 | @echo Buid Animations.res file from Animations.rc 2 | BRCC32.EXE Animations.rc 3 | pause -------------------------------------------------------------------------------- /Ext/StyledComponents/source/CommandLinkBMP.RES: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/source/CommandLinkBMP.RES -------------------------------------------------------------------------------- /Ext/StyledComponents/source/CommandLinkPNG.RES: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/source/CommandLinkPNG.RES -------------------------------------------------------------------------------- /Ext/StyledComponents/source/Skia.Vcl.StyledTaskDialogAnimatedUnit.dfm: -------------------------------------------------------------------------------- 1 | inherited StyledTaskDialogAnimatedForm: TStyledTaskDialogAnimatedForm 2 | Caption = 'StyledTaskDialogAnimatedForm' 3 | TextHeight = 15 4 | inherited FooterPanel: TPanel 5 | inherited FooterIconPanel: TPanel 6 | object SkFooterAnimatedImage: TSkAnimatedImage 7 | Left = 0 8 | Top = 0 9 | Width = 25 10 | Height = 25 11 | Align = alTop 12 | end 13 | end 14 | end 15 | inherited CenterPanel: TPanel 16 | inherited ImagePanel: TPanel 17 | inherited IconContainer: TPanel 18 | object SkAnimatedImage: TSkAnimatedImage 19 | Left = 0 20 | Top = 0 21 | Width = 64 22 | Height = 64 23 | Align = alClient 24 | end 25 | end 26 | end 27 | end 28 | end 29 | -------------------------------------------------------------------------------- /Ext/StyledComponents/source/StyledButtonsBMP.RES: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/source/StyledButtonsBMP.RES -------------------------------------------------------------------------------- /Ext/StyledComponents/source/StyledButtonsPNG.RES: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/source/StyledButtonsPNG.RES -------------------------------------------------------------------------------- /Ext/StyledComponents/source/StyledComponents.inc: -------------------------------------------------------------------------------- 1 | {.$Define ItaMessages} 2 | {.$Define FraMessages} 3 | {.$DEFINE Use_Large_Dialog_Icons} 4 | 5 | {$DEFINE INCLUDE_AngularButtonStyles} 6 | {$DEFINE INCLUDE_BootstrapButtonStyles} 7 | {$DEFINE INCLUDE_ColorButtonStyles} 8 | 9 | // Delphi XE6 10 | {$IFDEF VER270} 11 | {$DEFINE DXE6+} 12 | {$ENDIF} 13 | 14 | // Delphi XE7 15 | {$IFDEF VER280} 16 | {$DEFINE DXE6+} 17 | {$DEFINE DXE7+} 18 | {$ENDIF} 19 | 20 | // Delphi XE8 21 | {$IFDEF VER290} 22 | {$DEFINE DXE6+} 23 | {$DEFINE DXE7+} 24 | {$DEFINE DXE8+} 25 | {$ENDIF} 26 | 27 | // Delphi 10 Seattle 28 | {$IFDEF VER300} 29 | {$DEFINE DXE6+} 30 | {$DEFINE DXE7+} 31 | {$DEFINE DXE8+} 32 | {$DEFINE D10_0+} 33 | {$ENDIF} 34 | 35 | // Delphi 10.1 Berlin 36 | {$IFDEF VER310} 37 | {$DEFINE DXE6+} 38 | {$DEFINE DXE7+} 39 | {$DEFINE DXE8+} 40 | {$DEFINE D10_0+} 41 | {$DEFINE D10_1+} 42 | {$ENDIF} 43 | 44 | // Delphi 10.2 Tokyo 45 | {$IFDEF VER320} 46 | {$DEFINE DXE6+} 47 | {$DEFINE DXE7+} 48 | {$DEFINE DXE8+} 49 | {$DEFINE D10_0+} 50 | {$DEFINE D10_1+} 51 | {$DEFINE D10_2+} 52 | {$ENDIF} 53 | 54 | // Delphi 10.3 Rio 55 | {$IFDEF VER330} 56 | {$DEFINE DXE6+} 57 | {$DEFINE DXE7+} 58 | {$DEFINE DXE8+} 59 | {$DEFINE D10_0+} 60 | {$DEFINE D10_1+} 61 | {$DEFINE D10_2+} 62 | {$DEFINE D10_3+} 63 | {$ENDIF} 64 | 65 | // Delphi 10.4 Sydney 66 | {$IFDEF VER340} 67 | {$DEFINE DXE6+} 68 | {$DEFINE DXE7+} 69 | {$DEFINE DXE8+} 70 | {$DEFINE D10_0+} 71 | {$DEFINE D10_1+} 72 | {$DEFINE D10_2+} 73 | {$DEFINE D10_3+} 74 | {$DEFINE D10_4+} 75 | {$ENDIF} 76 | 77 | // Delphi 11 Alexandria 78 | {$IFDEF VER350} 79 | {$DEFINE DXE6+} 80 | {$DEFINE DXE7+} 81 | {$DEFINE DXE8+} 82 | {$DEFINE D10_0+} 83 | {$DEFINE D10_1+} 84 | {$DEFINE D10_2+} 85 | {$DEFINE D10_3+} 86 | {$DEFINE D10_4+} 87 | {$DEFINE D11+} 88 | {$ENDIF} 89 | 90 | // Delphi 12 Athens 91 | {$IFDEF VER360} 92 | {$DEFINE DXE6+} 93 | {$DEFINE DXE7+} 94 | {$DEFINE DXE8+} 95 | {$DEFINE D10_0+} 96 | {$DEFINE D10_1+} 97 | {$DEFINE D10_2+} 98 | {$DEFINE D10_3+} 99 | {$DEFINE D10_4+} 100 | {$DEFINE D11+} 101 | {$DEFINE D12+} 102 | {$ENDIF} 103 | 104 | {$IFDEF DXE6+} 105 | {$Define GDIPlusSupport} 106 | {.$Define DrawTextWithGDIPlus} 107 | {$Define DrawRectWithGDIPlus} 108 | {$ENDIF} 109 | 110 | {$IFDEF D10_3+} 111 | {$Define HiDPISupport} 112 | {$ENDIF} 113 | 114 | -------------------------------------------------------------------------------- /Ext/StyledComponents/source/StyledNavButtonsBMP.RES: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/source/StyledNavButtonsBMP.RES -------------------------------------------------------------------------------- /Ext/StyledComponents/source/StyledNavButtonsPNG.RES: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/source/StyledNavButtonsPNG.RES -------------------------------------------------------------------------------- /Ext/StyledComponents/source/Vcl.StyledAnimatedTaskDialog.pas: -------------------------------------------------------------------------------- 1 | {******************************************************************************} 2 | { } 3 | { StyledAnimatedTaskDialog: a Task Dialog Component with StyleButtons } 4 | { and animations using Skia4Delphi } 5 | { } 6 | { Copyright (c) 2022-2025 (Ethea S.r.l.) } 7 | { Author: Carlo Barazzetta } 8 | { Contributors: } 9 | { } 10 | { https://github.com/EtheaDev/StyledComponents } 11 | { } 12 | {******************************************************************************} 13 | { } 14 | { Licensed under the Apache License, Version 2.0 (the "License"); } 15 | { you may not use this file except in compliance with the License. } 16 | { You may obtain a copy of the License at } 17 | { } 18 | { http://www.apache.org/licenses/LICENSE-2.0 } 19 | { } 20 | { Unless required by applicable law or agreed to in writing, software } 21 | { distributed under the License is distributed on an "AS IS" BASIS, } 22 | { WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. } 23 | { See the License for the specific language governing permissions and } 24 | { limitations under the License. } 25 | { } 26 | {******************************************************************************} 27 | unit Vcl.StyledAnimatedTaskDialog; 28 | 29 | {$INCLUDE StyledComponents.inc} 30 | 31 | interface 32 | 33 | uses 34 | System.SysUtils 35 | , System.Classes 36 | , WinApi.Windows 37 | , Vcl.StyledTaskDialog 38 | ; 39 | 40 | //{$WARN SYMBOL_PLATFORM OFF} 41 | type 42 | TStyledAnimatedTaskDialog = class(TStyledTaskDialog) 43 | private 44 | strict protected 45 | public 46 | end; 47 | 48 | implementation 49 | 50 | uses 51 | Skia.Vcl.StyledTaskDialogAnimatedUnit //to register StyledTaskDialogAnimatedUnit 52 | ; 53 | 54 | initialization 55 | 56 | finalization 57 | 58 | end. 59 | -------------------------------------------------------------------------------- /Ext/StyledComponents/source/Vcl.StyledCmpMessages.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/source/Vcl.StyledCmpMessages.pas -------------------------------------------------------------------------------- /Ext/StyledComponents/source/Vcl.StyledCmpStrUtils.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/StyledComponents/source/Vcl.StyledCmpStrUtils.pas -------------------------------------------------------------------------------- /Ext/StyledComponents/source/Vcl.StyledComponentsHooks.pas: -------------------------------------------------------------------------------- 1 | {******************************************************************************} 2 | { } 3 | { StyledComponentsHooks: an interposer Unit to use Styled Components } 4 | { using Standard Delphi Controls Class Names } 5 | { } 6 | { Copyright (c) 2022-2025 (Ethea S.r.l.) } 7 | { Author: Carlo Barazzetta } 8 | { Contributors: } 9 | { } 10 | { https://github.com/EtheaDev/StyledComponents } 11 | { } 12 | {******************************************************************************} 13 | { } 14 | { Licensed under the Apache License, Version 2.0 (the "License"); } 15 | { you may not use this file except in compliance with the License. } 16 | { You may obtain a copy of the License at } 17 | { } 18 | { http://www.apache.org/licenses/LICENSE-2.0 } 19 | { } 20 | { Unless required by applicable law or agreed to in writing, software } 21 | { distributed under the License is distributed on an "AS IS" BASIS, } 22 | { WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. } 23 | { See the License for the specific language governing permissions and } 24 | { limitations under the License. } 25 | { } 26 | {******************************************************************************} 27 | unit Vcl.StyledComponentsHooks; 28 | 29 | interface 30 | 31 | {$INCLUDE StyledComponents.inc} 32 | 33 | uses 34 | Vcl.StyledButton 35 | , Vcl.StyledDbNavigator 36 | , Vcl.StyledToolbar 37 | , Vcl.StyledButtonGroup 38 | , Vcl.StyledCategoryButtons 39 | ; 40 | 41 | type 42 | //Interposer Class for TButton -> TStyledButton 43 | TButton = class(TStyledButton) end; 44 | 45 | //Interposer Class for TBitBtn -> TStyledBitBtn 46 | TBitBtn = class(TStyledBitBtn) end; 47 | 48 | //Interposer Class for TBitBtn -> TStyledSpeedButton 49 | TSpeedButton = class(TStyledSpeedButton) end; 50 | 51 | //Interposer Class for TDbNavigator -> TStyledDbNavigator 52 | TDbNavigator = class(TStyledDbNavigator) end; 53 | 54 | //Interposer Class for TBindNavigator -> TStyledBindNavigator 55 | TBindNavigator = class(TStyledBindNavigator) end; 56 | 57 | //Interposer Class for TToolbar -> TStyledToolbar 58 | TToolbar = class(TStyledToolbar) end; 59 | 60 | //Interposer Class for TToolbutton -> TStyledToolButton 61 | TToolbutton = class(TStyledToolbutton) end; 62 | 63 | //Interposer Class for TButtonGroup -> TStyledButtonGroup 64 | TButtonGroup = class(TStyledButtonGroup) end; 65 | 66 | //Interposer Class for TCategoryButtons -> TStyledCategoryButtons 67 | TCategoryButtons = class(TStyledCategoryButtons) end; 68 | 69 | //Interposer Class for TButtonCategory -> TStyledButtonCategory 70 | TButtonCategory = class(TStyledButtonCategory) end; 71 | 72 | implementation 73 | 74 | end. 75 | -------------------------------------------------------------------------------- /Ext/SynEdit/Packages/Delphi11.groupproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | {450C8E42-F5B0-4275-9B2A-B95A0ED61BEB} 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 | -------------------------------------------------------------------------------- /Ext/SynEdit/Packages/Delphi12.groupproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | {20EAD8A8-4C4A-4FC8-9292-D1BF23BB9F4E} 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 | -------------------------------------------------------------------------------- /Ext/SynEdit/Packages/SynEdit_D11.dpk: -------------------------------------------------------------------------------- 1 | package SynEdit_D11; 2 | 3 | {$R *.res} 4 | {$R '..\Source\SynEditReg.dcr'} 5 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 6 | {$ALIGN 8} 7 | {$ASSERTIONS ON} 8 | {$BOOLEVAL OFF} 9 | {$DEBUGINFO OFF} 10 | {$EXTENDEDSYNTAX ON} 11 | {$IMPORTEDDATA ON} 12 | {$IOCHECKS ON} 13 | {$LOCALSYMBOLS OFF} 14 | {$LONGSTRINGS ON} 15 | {$OPENSTRINGS ON} 16 | {$OPTIMIZATION ON} 17 | {$OVERFLOWCHECKS OFF} 18 | {$RANGECHECKS OFF} 19 | {$REFERENCEINFO OFF} 20 | {$SAFEDIVIDE OFF} 21 | {$STACKFRAMES OFF} 22 | {$TYPEDADDRESS OFF} 23 | {$VARSTRINGCHECKS ON} 24 | {$WRITEABLECONST ON} 25 | {$MINENUMSIZE 1} 26 | {$IMAGEBASE $400000} 27 | {$DEFINE RELEASE} 28 | {$ENDIF IMPLICITBUILDING} 29 | {$DESCRIPTION 'SynEdit component suite'} 30 | {$DESIGNONLY} 31 | {$IMPLICITBUILD OFF} 32 | 33 | requires 34 | designide, 35 | SynEdit_R11; 36 | 37 | contains 38 | SynEditReg in '..\Source\SynEditReg.pas', 39 | SynEditPropertyReg in '..\Source\SynEditPropertyReg.pas', 40 | SynHighlighterManager in '..\Source\SynHighlighterManager.pas'; 41 | 42 | end. 43 | -------------------------------------------------------------------------------- /Ext/SynEdit/Packages/SynEdit_D11.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Packages/SynEdit_D11.res -------------------------------------------------------------------------------- /Ext/SynEdit/Packages/SynEdit_D12.dpk: -------------------------------------------------------------------------------- 1 | package SynEdit_D12; 2 | 3 | {$R *.res} 4 | {$R '..\Source\SynEditReg.dcr'} 5 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users} 6 | {$ALIGN 8} 7 | {$ASSERTIONS ON} 8 | {$BOOLEVAL OFF} 9 | {$DEBUGINFO OFF} 10 | {$EXTENDEDSYNTAX ON} 11 | {$IMPORTEDDATA ON} 12 | {$IOCHECKS ON} 13 | {$LOCALSYMBOLS OFF} 14 | {$LONGSTRINGS ON} 15 | {$OPENSTRINGS ON} 16 | {$OPTIMIZATION ON} 17 | {$OVERFLOWCHECKS OFF} 18 | {$RANGECHECKS OFF} 19 | {$REFERENCEINFO OFF} 20 | {$SAFEDIVIDE OFF} 21 | {$STACKFRAMES OFF} 22 | {$TYPEDADDRESS OFF} 23 | {$VARSTRINGCHECKS ON} 24 | {$WRITEABLECONST ON} 25 | {$MINENUMSIZE 1} 26 | {$IMAGEBASE $400000} 27 | {$DEFINE RELEASE} 28 | {$ENDIF IMPLICITBUILDING} 29 | {$DESCRIPTION 'SynEdit component suite'} 30 | {$DESIGNONLY} 31 | {$IMPLICITBUILD OFF} 32 | 33 | requires 34 | designide, 35 | SynEdit_R12; 36 | 37 | contains 38 | SynEditReg in '..\Source\SynEditReg.pas', 39 | SynEditPropertyReg in '..\Source\SynEditPropertyReg.pas', 40 | SynHighlighterManager in '..\Source\SynHighlighterManager.pas'; 41 | 42 | end. 43 | -------------------------------------------------------------------------------- /Ext/SynEdit/Packages/SynEdit_D12.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Packages/SynEdit_D12.res -------------------------------------------------------------------------------- /Ext/SynEdit/Packages/SynEdit_R11.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Packages/SynEdit_R11.res -------------------------------------------------------------------------------- /Ext/SynEdit/Packages/SynEdit_R12.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Packages/SynEdit_R12.res -------------------------------------------------------------------------------- /Ext/SynEdit/Source/FSynHighlightProp.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/FSynHighlightProp.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/FTestPrintPreview.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/FTestPrintPreview.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/Page.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/Page.bmp -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynAutoCorrectEditor.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynAutoCorrectEditor.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEdit.inc: -------------------------------------------------------------------------------- 1 | {------------------------------------------------------------------------------} 2 | { Common compiler defines } 3 | { (remove the dot in front of a define to enable it) } 4 | {------------------------------------------------------------------------------} 5 | 6 | {$B-,H+} // defaults are short evaluation of boolean values and long strings 7 | 8 | {.$DEFINE SYN_DEVELOPMENT_CHECKS} // additional tests for debugging 9 | {$IFDEF SYN_DEVELOPMENT_CHECKS} 10 | {$R+,Q+,S+,T+} 11 | {$ENDIF} 12 | 13 | {------------------------------------------------------------------------------} 14 | { Pull in all defines from SynEditJedi.inc (must be done after the common } 15 | { compiler defines to work correctly). Use SynEdit-prefix to avoid problems } 16 | { with other versions of jedi.inc in the search-path. } 17 | {------------------------------------------------------------------------------} 18 | 19 | {$I SynEditJedi.inc} 20 | 21 | {------------------------------------------------------------------------------} 22 | { Please change this to suit your needs (to activate an option remove the dot } 23 | { in front of a DEFINE) } 24 | {------------------------------------------------------------------------------} 25 | 26 | // "Heredoc" syntax highlighting 27 | // If you enable the following statement and use highlighter(s) that have 28 | // support for "Heredoc" strings as scheme(s) in SynMultiSyn, you must 29 | // implement your own SynMultiSyn OnCustomRange event handler in order to 30 | // properly store Range State information 31 | {.$DEFINE SYN_HEREDOC} 32 | 33 | 34 | -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEdit.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEdit.res -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditExport.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditExport.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditHighlighterOptions.pas: -------------------------------------------------------------------------------- 1 | {------------------------------------------------------------------------------- 2 | The contents of this file are subject to the Mozilla Public License 3 | Version 1.1 (the "License"); you may not use this file except in compliance 4 | with the License. You may obtain a copy of the License at 5 | http://www.mozilla.org/MPL/ 6 | Software distributed under the License is distributed on an "AS IS" basis, 7 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for 8 | the specific language governing rights and limitations under the License. 9 | 10 | Datetime format is dd.MM.yyyy hh:mm:ss. 11 | 12 | The Original Code is: SynEditHighlighterOptions.pas, released 12.09.2012. 13 | 14 | All Rights Reserved. 15 | 16 | Contributors to the SynEdit and mwEdit projects are listed in the 17 | Contributors.txt file. 18 | 19 | $Id: SynEditHighlighterOptions.pas,v 1.0.2 25.10.2012 11:16:19 CodehunterWorks Exp $ 20 | 21 | You may retrieve the latest version of this file at the SynEdit home page, 22 | located at http://SynEdit.SourceForge.net 23 | 24 | Last Changes: 25 | 21.09.2012 08:37:10 - Moved from String to WideString 26 | 25.10.2012 11:16:19 - Added DefaultExtension property 27 | 28 | Known Issues: 29 | -------------------------------------------------------------------------------} 30 | 31 | unit SynEditHighlighterOptions; 32 | 33 | interface 34 | 35 | uses 36 | Classes; 37 | 38 | type 39 | TSynEditHighlighterOptions = class(TPersistent) 40 | private 41 | FAutoDetectEnabled: Boolean; 42 | FAutoDetectLineLimit: Cardinal; 43 | FAutoDetectMatchExpression: WideString; 44 | FDefaultExtension: WideString; 45 | FLineCommentarEnd: WideString; 46 | FLineCommentarStart: WideString; 47 | FTitle: WideString; 48 | FVisible: Boolean; 49 | public 50 | procedure Assign(Source: TPersistent); override; 51 | procedure AssignTo(Dest: TPersistent); override; 52 | published 53 | property AutoDetectEnabled: Boolean read FAutoDetectEnabled write FAutoDetectEnabled; 54 | property AutoDetectLineLimit: Cardinal read FAutoDetectLineLimit write FAutoDetectLineLimit; 55 | property AutoDetectMatchExpression: WideString read FAutoDetectMatchExpression write FAutoDetectMatchExpression; 56 | property DefaultExtension: WideString read FDefaultExtension write FDefaultExtension; 57 | property LineCommentarEnd: WideString read FLineCommentarEnd write FLineCommentarEnd; 58 | property LineCommentarStart: WideString read FLineCommentarStart write FLineCommentarStart; 59 | property Title: WideString read FTitle write FTitle; 60 | property Visible: Boolean read FVisible write FVisible; 61 | end; 62 | 63 | implementation 64 | 65 | procedure TSynEditHighlighterOptions.Assign(Source: TPersistent); 66 | begin 67 | if Source.InheritsFrom(TSynEditHighlighterOptions) then begin 68 | with TSynEditHighlighterOptions(Source) do begin 69 | FAutoDetectEnabled := AutoDetectEnabled; 70 | FAutoDetectMatchExpression := AutoDetectMatchExpression; 71 | FAutoDetectLineLimit := AutoDetectLineLimit; 72 | FDefaultExtension := DefaultExtension; 73 | FLineCommentarStart := LineCommentarStart; 74 | FLineCommentarEnd := LineCommentarEnd; 75 | FTitle := Title; 76 | FVisible := Visible; 77 | end; 78 | end; 79 | end; 80 | 81 | procedure TSynEditHighlighterOptions.AssignTo(Dest: TPersistent); 82 | begin 83 | if Dest.InheritsFrom(TSynEditHighlighterOptions) then begin 84 | with TSynEditHighlighterOptions(Dest) do begin 85 | AutoDetectEnabled := FAutoDetectEnabled; 86 | AutoDetectMatchExpression := FAutoDetectMatchExpression; 87 | AutoDetectLineLimit := FAutoDetectLineLimit; 88 | DefaultExtension := FDefaultExtension; 89 | LineCommentarStart := FLineCommentarStart; 90 | LineCommentarEnd := FLineCommentarEnd; 91 | Title := FTitle; 92 | Visible := FVisible; 93 | end; 94 | end; 95 | end; 96 | 97 | end. 98 | -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditKbdHandler.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditKbdHandler.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditKeyCmdEditor.dfm: -------------------------------------------------------------------------------- 1 | object SynEditKeystrokeEditorForm: TSynEditKeystrokeEditorForm 2 | Left = 424 3 | Top = 306 4 | BorderStyle = bsDialog 5 | Caption = 'Edit Keystroke' 6 | ClientHeight = 129 7 | ClientWidth = 269 8 | Color = clBtnFace 9 | Font.Charset = DEFAULT_CHARSET 10 | Font.Color = clWindowText 11 | Font.Height = -11 12 | Font.Name = 'MS Sans Serif' 13 | Font.Style = [] 14 | Position = poScreenCenter 15 | OnCreate = FormCreate 16 | OnShow = FormShow 17 | PixelsPerInch = 96 18 | TextHeight = 13 19 | object pnlAlign: TPanel 20 | Left = 3 21 | Top = 5 22 | Width = 262 23 | Height = 120 24 | BevelInner = bvRaised 25 | BevelOuter = bvLowered 26 | TabOrder = 0 27 | object Label1: TLabel 28 | Left = 9 29 | Top = 14 30 | Width = 50 31 | Height = 13 32 | Caption = 'Command:' 33 | end 34 | object Label2: TLabel 35 | Left = 9 36 | Top = 41 37 | Width = 50 38 | Height = 13 39 | Caption = 'Keystroke:' 40 | end 41 | object Label4: TLabel 42 | Left = 9 43 | Top = 65 44 | Width = 50 45 | Height = 13 46 | Caption = 'Keystroke:' 47 | end 48 | object bntClearKey: TButton 49 | Left = 9 50 | Top = 86 51 | Width = 75 52 | Height = 25 53 | Caption = 'Clear Key' 54 | TabOrder = 3 55 | OnClick = bntClearKeyClick 56 | end 57 | object btnOK: TButton 58 | Left = 93 59 | Top = 86 60 | Width = 75 61 | Height = 25 62 | Caption = 'OK' 63 | TabOrder = 1 64 | OnClick = btnOKClick 65 | end 66 | object cmbCommand: TComboBox 67 | Left = 65 68 | Top = 14 69 | Width = 186 70 | Height = 21 71 | Style = csDropDownList 72 | TabOrder = 0 73 | end 74 | object btnCancel: TButton 75 | Left = 177 76 | Top = 86 77 | Width = 75 78 | Height = 25 79 | Cancel = True 80 | Caption = 'Cancel' 81 | ModalResult = 2 82 | TabOrder = 2 83 | end 84 | end 85 | end 86 | -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditKeyCmdsEditor.dfm: -------------------------------------------------------------------------------- 1 | object SynEditKeystrokesEditorForm: TSynEditKeystrokesEditorForm 2 | Left = 300 3 | Top = 241 4 | BorderIcons = [biSystemMenu, biMaximize] 5 | Caption = 'Keystroke Editor' 6 | ClientHeight = 319 7 | ClientWidth = 382 8 | Color = clBtnFace 9 | Font.Charset = DEFAULT_CHARSET 10 | Font.Color = clWindowText 11 | Font.Height = -11 12 | Font.Name = 'MS Sans Serif' 13 | Font.Style = [] 14 | Position = poScreenCenter 15 | OnCreate = FormCreate 16 | OnResize = FormResize 17 | TextHeight = 13 18 | object pnlBottom: TPanel 19 | Left = 8 20 | Top = 8 21 | Width = 365 22 | Height = 308 23 | BevelInner = bvRaised 24 | BevelOuter = bvLowered 25 | TabOrder = 0 26 | object lnlInfo: TLabel 27 | Left = 5 28 | Top = 271 29 | Width = 229 30 | Height = 13 31 | Caption = 'NOTE: To have multiple keystrokes do the same' 32 | end 33 | object lnlInfo2: TLabel 34 | Left = 42 35 | Top = 287 36 | Width = 217 37 | Height = 13 38 | Caption = 'command, assign the command multiple times.' 39 | end 40 | object pnlCommands: TPanel 41 | Left = 16 42 | Top = 16 43 | Width = 246 44 | Height = 244 45 | BevelInner = bvLowered 46 | BorderWidth = 4 47 | Caption = 'pnlCommands' 48 | TabOrder = 0 49 | object KeyCmdList: TListView 50 | Left = 6 51 | Top = 6 52 | Width = 234 53 | Height = 232 54 | Align = alClient 55 | BorderStyle = bsNone 56 | Columns = < 57 | item 58 | Caption = 'Command' 59 | Width = 117 60 | end 61 | item 62 | Caption = 'Keystroke' 63 | Width = 101 64 | end> 65 | ColumnClick = False 66 | HideSelection = False 67 | TabOrder = 0 68 | ViewStyle = vsReport 69 | OnClick = KeyCmdListClick 70 | OnDblClick = btnEditClick 71 | end 72 | end 73 | object btnAdd: TButton 74 | Left = 276 75 | Top = 20 76 | Width = 75 77 | Height = 25 78 | Caption = '&Add' 79 | TabOrder = 1 80 | OnClick = btnAddClick 81 | end 82 | object btnEdit: TButton 83 | Left = 276 84 | Top = 52 85 | Width = 75 86 | Height = 25 87 | Caption = '&Edit' 88 | Enabled = False 89 | TabOrder = 2 90 | OnClick = btnEditClick 91 | end 92 | object btnDelete: TButton 93 | Left = 276 94 | Top = 84 95 | Width = 75 96 | Height = 25 97 | Caption = '&Delete' 98 | Enabled = False 99 | TabOrder = 3 100 | OnClick = btnDeleteClick 101 | end 102 | object btnClear: TButton 103 | Left = 276 104 | Top = 116 105 | Width = 75 106 | Height = 25 107 | Caption = 'C&lear List' 108 | TabOrder = 4 109 | OnClick = btnClearClick 110 | end 111 | object btnReset: TButton 112 | Left = 276 113 | Top = 148 114 | Width = 75 115 | Height = 25 116 | Caption = '&Reset List' 117 | TabOrder = 5 118 | OnClick = btnResetClick 119 | end 120 | object btnOK: TButton 121 | Left = 276 122 | Top = 241 123 | Width = 75 124 | Height = 25 125 | Caption = '&OK' 126 | Default = True 127 | TabOrder = 6 128 | OnClick = btnOKClick 129 | end 130 | object btnCancel: TButton 131 | Left = 276 132 | Top = 273 133 | Width = 75 134 | Height = 25 135 | Cancel = True 136 | Caption = '&Cancel' 137 | TabOrder = 7 138 | OnClick = btnCancelClick 139 | end 140 | end 141 | end 142 | -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditMiscClasses.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditMiscClasses.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditPlugins.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditPlugins.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditPrintHeaderFooter.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditPrintHeaderFooter.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditPrintPreview.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditPrintPreview.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditPrintTypes.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditPrintTypes.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditPropertyReg.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditPropertyReg.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditPythonBehaviour.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditPythonBehaviour.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditReg.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditReg.dcr -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditReg.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditReg.res -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditRegexSearch.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditRegexSearch.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditTextBuffer.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditTextBuffer.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditTypes.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditTypes.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditWildcardSearch.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditWildcardSearch.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynEditWordWrap.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynEditWordWrap.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynExportHTML.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynExportHTML.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynExportTeX.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynExportTeX.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterADSP21xx.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterADSP21xx.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterAWK.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterAWK.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterAsm.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterAsm.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterBaan.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterBaan.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterBat.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterBat.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterCAC.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterCAC.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterCPM.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterCPM.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterCS.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterCS.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterCache.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterCache.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterCobol.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterCobol.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterCpp.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterCpp.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterCss.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterCss.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterDOT.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterDOT.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterDfm.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterDfm.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterDml.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterDml.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterEiffel.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterEiffel.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterFortran.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterFortran.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterFoxpro.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterFoxpro.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterGWS.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterGWS.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterGalaxy.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterGalaxy.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterGeneral.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterGeneral.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterHC11.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterHC11.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterHP48.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterHP48.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterHaskell.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterHaskell.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterHtml.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterHtml.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterIDL.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterIDL.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterIni.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterIni.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterInno.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterInno.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterJScript.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterJScript.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterJava.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterJava.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterKix.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterKix.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterLDraw.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterLDraw.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterM3.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterM3.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterModelica.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterModelica.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterMsg.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterMsg.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterMulti.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterMulti.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterPas.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterPas.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterProgress.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterProgress.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterPython.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterPython.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterRC.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterRC.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterRuby.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterRuby.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterSDD.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterSDD.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterST.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterST.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterSml.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterSml.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterTclTk.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterTclTk.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterTeX.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterTeX.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterURI.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterURI.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterUnreal.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterUnreal.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterVB.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterVB.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterVBScript.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterVBScript.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterVrml97.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterVrml97.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynHighlighterXML.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynHighlighterXML.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynMacroRecorder.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynMacroRecorder.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynSpellCheck.dcr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynSpellCheck.dcr -------------------------------------------------------------------------------- /Ext/SynEdit/Source/SynURIOpener.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynEdit/Source/SynURIOpener.pas -------------------------------------------------------------------------------- /Ext/SynEdit/Source/dlgConfirmReplace.dfm: -------------------------------------------------------------------------------- 1 | object ConfirmReplaceDialog: TConfirmReplaceDialog 2 | Left = 176 3 | Top = 158 4 | BorderStyle = bsDialog 5 | Caption = 'Confirm replace' 6 | ClientHeight = 98 7 | ClientWidth = 328 8 | Color = clBtnFace 9 | Font.Charset = DEFAULT_CHARSET 10 | Font.Color = clWindowText 11 | Font.Height = -12 12 | Font.Name = 'Segoe UI' 13 | Font.Style = [] 14 | OldCreateOrder = False 15 | OnCreate = FormCreate 16 | OnDestroy = FormDestroy 17 | PixelsPerInch = 96 18 | TextHeight = 15 19 | object lblConfirmation: TLabel 20 | Left = 60 21 | Top = 12 22 | Width = 261 23 | Height = 44 24 | AutoSize = False 25 | WordWrap = True 26 | end 27 | object Image: TImage 28 | Left = 16 29 | Top = 16 30 | Width = 32 31 | Height = 32 32 | end 33 | object btnReplace: TButton 34 | Left = 8 35 | Top = 67 36 | Width = 75 37 | Height = 23 38 | Caption = '&Yes' 39 | Default = True 40 | ModalResult = 6 41 | TabOrder = 0 42 | end 43 | object btnSkip: TButton 44 | Left = 87 45 | Top = 67 46 | Width = 75 47 | Height = 23 48 | Caption = '&No' 49 | ModalResult = 7 50 | TabOrder = 1 51 | end 52 | object btnCancel: TButton 53 | Left = 166 54 | Top = 67 55 | Width = 75 56 | Height = 23 57 | Cancel = True 58 | Caption = 'Cancel' 59 | ModalResult = 2 60 | TabOrder = 2 61 | end 62 | object btnReplaceAll: TButton 63 | Left = 245 64 | Top = 67 65 | Width = 75 66 | Height = 23 67 | Caption = 'Yes to &all' 68 | ModalResult = 10 69 | TabOrder = 3 70 | end 71 | end 72 | -------------------------------------------------------------------------------- /Ext/SynEdit/Source/dlgConfirmReplace.pas: -------------------------------------------------------------------------------- 1 | {------------------------------------------------------------------------------- 2 | The contents of this file are subject to the Mozilla Public License 3 | Version 1.1 (the "License"); you may not use this file except in compliance 4 | with the License. You may obtain a copy of the License at 5 | http://www.mozilla.org/MPL/ 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for 9 | the specific language governing rights and limitations under the License. 10 | 11 | The Original Code is: dlgConfirmReplace.dpr, released 2000-06-23. 12 | 13 | The Original Code is part of the SearchReplaceDemo project, written by 14 | Michael Hieke for the SynEdit component suite. 15 | All Rights Reserved. 16 | 17 | Contributors to the SynEdit project are listed in the Contributors.txt file. 18 | 19 | Alternatively, the contents of this file may be used under the terms of the 20 | GNU General Public License Version 2 or later (the "GPL"), in which case 21 | the provisions of the GPL are applicable instead of those above. 22 | If you wish to allow use of your version of this file only under the terms 23 | of the GPL and not to allow others to use your version of this file 24 | under the MPL, indicate your decision by deleting the provisions above and 25 | replace them with the notice and other provisions required by the GPL. 26 | If you do not delete the provisions above, a recipient may use your version 27 | of this file under either the MPL or the GPL. 28 | 29 | $Id: dlgConfirmReplace.pas,v 1.2 2002/11/05 17:04:02 giuseppem Exp $ 30 | 31 | You may retrieve the latest version of this file at the SynEdit home page, 32 | located at http://SynEdit.SourceForge.net 33 | 34 | Contributors: Carlo Barazzetta 35 | 36 | Known Issues: 37 | -------------------------------------------------------------------------------} 38 | unit dlgConfirmReplace; 39 | 40 | {$I SynEdit.inc} 41 | 42 | interface 43 | 44 | uses 45 | Windows, SysUtils, Classes, Graphics, Controls, Forms, 46 | StdCtrls, ExtCtrls; 47 | 48 | type 49 | TConfirmReplaceDialog = class(TForm) 50 | btnReplace: TButton; 51 | lblConfirmation: TLabel; 52 | btnSkip: TButton; 53 | btnCancel: TButton; 54 | btnReplaceAll: TButton; 55 | Image: TImage; 56 | procedure FormCreate(Sender: TObject); 57 | procedure FormDestroy(Sender: TObject); 58 | public 59 | procedure PrepareShow(AEditorRect: TRect; X, Y1, Y2: integer; 60 | AReplaceText: string); 61 | end; 62 | 63 | var 64 | ConfirmReplaceDialog: TConfirmReplaceDialog; 65 | 66 | implementation 67 | 68 | {$R *.DFM} 69 | 70 | resourcestring 71 | SAskReplaceText = 'Replace this occurence of "%s"?'; 72 | 73 | { TConfirmReplaceDialog } 74 | 75 | procedure TConfirmReplaceDialog.FormCreate(Sender: TObject); 76 | begin 77 | Image.Picture.Icon.Handle := LoadIcon(0, IDI_QUESTION); 78 | end; 79 | 80 | procedure TConfirmReplaceDialog.FormDestroy(Sender: TObject); 81 | begin 82 | ConfirmReplaceDialog := nil; 83 | end; 84 | 85 | procedure TConfirmReplaceDialog.PrepareShow(AEditorRect: TRect; 86 | X, Y1, Y2: integer; AReplaceText: string); 87 | var 88 | nW, nH: integer; 89 | begin 90 | lblConfirmation.Caption := Format(SAskReplaceText, [AReplaceText]); 91 | nW := AEditorRect.Right - AEditorRect.Left; 92 | nH := AEditorRect.Bottom - AEditorRect.Top; 93 | 94 | if nW <= Width then 95 | X := AEditorRect.Left - (Width - nW) div 2 96 | else 97 | begin 98 | if X + Width > AEditorRect.Right then 99 | X := AEditorRect.Right - Width; 100 | end; 101 | if Y2 > AEditorRect.Top + MulDiv(nH, 2, 3) then 102 | Y2 := Y1 - Height - 4 103 | else 104 | Inc(Y2, 4); 105 | SetBounds(X, Y2, Width, Height); 106 | end; 107 | 108 | end. 109 | -------------------------------------------------------------------------------- /Ext/SynEdit/Source/dlgReplaceText.dfm: -------------------------------------------------------------------------------- 1 | inherited TextReplaceDialog: TTextReplaceDialog 2 | Caption = 'Replace text' 3 | ClientHeight = 206 4 | OldCreateOrder = True 5 | ExplicitHeight = 235 6 | PixelsPerInch = 96 7 | TextHeight = 13 8 | object ReplaceWidthLabel: TLabel [0] 9 | Left = 8 10 | Top = 41 11 | Width = 82 12 | Height = 13 13 | Alignment = taRightJustify 14 | AutoSize = False 15 | Caption = '&Replace with:' 16 | end 17 | inherited cbSearchText: TComboBox 18 | TabOrder = 5 19 | end 20 | inherited FSearchOptions: TGroupBox 21 | Top = 70 22 | ExplicitTop = 70 23 | end 24 | inherited FSearchDirection: TRadioGroup 25 | Top = 70 26 | ExplicitTop = 70 27 | end 28 | inherited btnOK: TButton 29 | Top = 174 30 | ExplicitTop = 174 31 | end 32 | object cbReplaceText: TComboBox [6] 33 | Left = 96 34 | Top = 37 35 | Width = 228 36 | Height = 21 37 | TabOrder = 0 38 | end 39 | inherited btnCancel: TButton 40 | Top = 174 41 | ExplicitTop = 174 42 | end 43 | end 44 | -------------------------------------------------------------------------------- /Ext/SynEdit/Source/dlgSearchText.dfm: -------------------------------------------------------------------------------- 1 | object TextSearchDialog: TTextSearchDialog 2 | Left = 132 3 | Top = 168 4 | BorderStyle = bsDialog 5 | Caption = 'Search Text' 6 | ClientHeight = 180 7 | ClientWidth = 332 8 | Color = clBtnFace 9 | Font.Charset = ANSI_CHARSET 10 | Font.Color = clWindowText 11 | Font.Height = -11 12 | Font.Name = 'Segoe UI' 13 | Font.Style = [] 14 | OldCreateOrder = False 15 | Position = poOwnerFormCenter 16 | OnCloseQuery = FormCloseQuery 17 | PixelsPerInch = 96 18 | TextHeight = 13 19 | object SearchForLabel: TLabel 20 | Left = 8 21 | Top = 12 22 | Width = 82 23 | Height = 13 24 | Alignment = taRightJustify 25 | AutoSize = False 26 | Caption = '&Search for:' 27 | end 28 | object cbSearchText: TComboBox 29 | Left = 96 30 | Top = 8 31 | Width = 228 32 | Height = 21 33 | TabOrder = 0 34 | end 35 | object FSearchOptions: TGroupBox 36 | Left = 8 37 | Top = 40 38 | Width = 154 39 | Height = 127 40 | Caption = 'Options' 41 | TabOrder = 1 42 | object cbSearchCaseSensitive: TCheckBox 43 | Left = 8 44 | Top = 17 45 | Width = 140 46 | Height = 17 47 | Caption = 'C&ase sensitivity' 48 | TabOrder = 0 49 | end 50 | object cbSearchWholeWords: TCheckBox 51 | Left = 8 52 | Top = 39 53 | Width = 140 54 | Height = 17 55 | Caption = '&Whole words only' 56 | TabOrder = 1 57 | end 58 | object cbSearchFromCursor: TCheckBox 59 | Left = 8 60 | Top = 61 61 | Width = 140 62 | Height = 17 63 | Caption = 'Search from &caret' 64 | TabOrder = 2 65 | end 66 | object cbSearchSelectedOnly: TCheckBox 67 | Left = 8 68 | Top = 83 69 | Width = 140 70 | Height = 17 71 | Caption = '&Selected text only' 72 | TabOrder = 3 73 | end 74 | object cbRegularExpression: TCheckBox 75 | Left = 8 76 | Top = 104 77 | Width = 140 78 | Height = 17 79 | Caption = '&Regular expression' 80 | TabOrder = 4 81 | end 82 | end 83 | object FSearchDirection: TRadioGroup 84 | Left = 170 85 | Top = 40 86 | Width = 154 87 | Height = 65 88 | Caption = 'Direction' 89 | ItemIndex = 0 90 | Items.Strings = ( 91 | '&Forward' 92 | '&Backward') 93 | TabOrder = 2 94 | end 95 | object btnOK: TButton 96 | Left = 170 97 | Top = 149 98 | Width = 75 99 | Height = 23 100 | Caption = 'OK' 101 | Default = True 102 | ModalResult = 1 103 | TabOrder = 3 104 | end 105 | object btnCancel: TButton 106 | Left = 249 107 | Top = 149 108 | Width = 75 109 | Height = 23 110 | Cancel = True 111 | Caption = 'Cancel' 112 | ModalResult = 2 113 | TabOrder = 4 114 | end 115 | end 116 | -------------------------------------------------------------------------------- /Ext/SynPDF/SynopseCommit.inc: -------------------------------------------------------------------------------- 1 | '1.18.6395' 2 | -------------------------------------------------------------------------------- /Ext/SynPDF/crc32c64.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynPDF/crc32c64.obj -------------------------------------------------------------------------------- /Ext/SynPDF/deflate.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynPDF/deflate.obj -------------------------------------------------------------------------------- /Ext/SynPDF/mORMotReport.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynPDF/mORMotReport.pas -------------------------------------------------------------------------------- /Ext/SynPDF/sha512-x64sse4.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynPDF/sha512-x64sse4.obj -------------------------------------------------------------------------------- /Ext/SynPDF/sha512-x86.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynPDF/sha512-x86.obj -------------------------------------------------------------------------------- /Ext/SynPDF/trees.obj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/SynPDF/trees.obj -------------------------------------------------------------------------------- /Ext/VCLStyleUtils/Common/AwesomeFont.RC: -------------------------------------------------------------------------------- 1 | fontawesome RCDATA fontawesome.ttf -------------------------------------------------------------------------------- /Ext/VCLStyleUtils/Common/AwesomeFont.RES: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/VCLStyleUtils/Common/AwesomeFont.RES -------------------------------------------------------------------------------- /Ext/VCLStyleUtils/Common/AwesomeFont_zip.RC: -------------------------------------------------------------------------------- 1 | fontawesome_zip RCDATA fontawesome.zip -------------------------------------------------------------------------------- /Ext/VCLStyleUtils/Common/AwesomeFont_zip.RES: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/VCLStyleUtils/Common/AwesomeFont_zip.RES -------------------------------------------------------------------------------- /Ext/VCLStyleUtils/Common/CompileResources.bat: -------------------------------------------------------------------------------- 1 | "C:\Program Files (x86)\Embarcadero\Studio\18.0\bin\brcc32.exe" AwesomeFont.rc 2 | Pause -------------------------------------------------------------------------------- /Ext/VCLStyleUtils/Common/CompileResources_zip.bat: -------------------------------------------------------------------------------- 1 | "C:\Program Files (x86)\Embarcadero\Studio\18.0\bin\brcc32.exe" AwesomeFont_zip.rc 2 | Pause -------------------------------------------------------------------------------- /Ext/VCLStyleUtils/Common/VCL.Styles.Utils.inc: -------------------------------------------------------------------------------- 1 | //************************************************************************************************** 2 | // 3 | // Vcl.Styles.Utils.inc 4 | // file for the VCL Styles Utils 5 | // https://github.com/RRUZ/vcl-styles-utils/ 6 | // 7 | // The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); 8 | // you may not use this file except in compliance with the License. You may obtain a copy of the 9 | // License at http://www.mozilla.org/MPL/ 10 | // 11 | // Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF 12 | // ANY KIND, either express or implied. See the License for the specific language governing rights 13 | // and limitations under the License. 14 | // 15 | // 16 | // Portions created by Mahdi Safsafi [SMP3] e-mail SMP@LIVE.FR 17 | // Portions created by Rodrigo Ruz V. are Copyright (C) 2013-2023 Rodrigo Ruz V. 18 | // All Rights Reserved. 19 | // 20 | //************************************************************************************************ 21 | {$DEFINE USE_Vcl.Styles.Hooks} 22 | {$DEFINE HOOK_UXTHEME} 23 | {$DEFINE HOOK_TDateTimePicker} 24 | {$DEFINE HOOK_TProgressBar} 25 | {.$DEFINE LimitStylesToMainApplicationThread} 26 | {.$DEFINE HOOK_VirtualShell} 27 | {.$DEFINE HOOK_ExplorerStatusBar} 28 | { Feature toggles for supported UxThemes - see Vcl.Styles.UxTheme } 29 | {$DEFINE HOOK_Button} 30 | {$DEFINE HOOK_AllButtons} 31 | {$DEFINE HOOK_Scrollbar} 32 | {$DEFINE HOOK_TaskDialog} 33 | {$DEFINE HOOK_ProgressBar} 34 | {$DEFINE HOOK_DateTimePicker} 35 | {$DEFINE HOOK_TreeView} 36 | {$DEFINE HOOK_ListView} 37 | {$DEFINE HOOK_ListBox} 38 | {$DEFINE HOOK_ComboBox} 39 | 40 | {$DEFINE HOOK_Spin} 41 | {$DEFINE HOOK_EDIT} 42 | {$DEFINE HOOK_Rebar} 43 | {$DEFINE HOOK_ToolBar} 44 | {$DEFINE HOOK_Menu} 45 | {$DEFINE HOOK_TrackBar} 46 | {$DEFINE HOOK_ToolTip} 47 | {$DEFINE HOOK_Tab} 48 | // Introduced in Windows Vista 49 | {$DEFINE HOOK_CommandModule} 50 | {$DEFINE HOOK_SearchBox} 51 | {$DEFINE HOOK_AddressBand} 52 | {$DEFINE HOOK_PreviewPane} 53 | {$DEFINE HOOK_TRYHARDER} 54 | {$DEFINE HOOK_BREADCRUMBAR} 55 | {$DEFINE HOOK_InfoBar} 56 | // Introduced in Windows 8 57 | {$DEFINE HOOK_Navigation} 58 | -------------------------------------------------------------------------------- /Ext/VCLStyleUtils/Common/Vcl.Styles.Register.pas: -------------------------------------------------------------------------------- 1 | unit Vcl.Styles.Register; 2 | 3 | interface 4 | 5 | procedure Register; 6 | 7 | implementation 8 | 9 | uses 10 | System.Classes, Vcl.Styles.Preview; 11 | 12 | procedure Register; 13 | begin 14 | RegisterComponents('VisualStyles', [TVisualStylePreview]); 15 | end; 16 | 17 | end. 18 | -------------------------------------------------------------------------------- /Ext/VCLStyleUtils/Common/Vcl.Styles.Utils.SysControls.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Ext/VCLStyleUtils/Common/Vcl.Styles.Utils.SysControls.pas -------------------------------------------------------------------------------- /Ext/VCLStyleUtils/DDetours/Source/DDetoursDefs.inc: -------------------------------------------------------------------------------- 1 | {.$DEFINE HOOK_INTERNAL_FUNCTIONS} // hook internal functions. 2 | 3 | {$IFDEF FPC} 4 | {$ASMMODE INTEL} 5 | {$ELSE !FPC} 6 | 7 | {$T-} 8 | 9 | {$IF CompilerVersion >= 17.0} 10 | {$DEFINE DELPHI_2005_UP} 11 | {$IFEND} 12 | 13 | {$IF CompilerVersion >= 18.5} 14 | {$DEFINE DELPHI_2007_UP} 15 | {$IFEND} 16 | 17 | {$IF CompilerVersion >= 20} 18 | {$DEFINE DELPHI_2009_UP} 19 | {$IFEND} 20 | 21 | {$IF CompilerVersion >= 21} 22 | {$DEFINE DELPHI_2010_UP} 23 | {$IFEND} 24 | 25 | {$IF CompilerVersion >= 22} 26 | {$DEFINE DELPHI_XE_UP} 27 | {$IFEND} 28 | 29 | {$IF CompilerVersion >= 23} 30 | {$DEFINE DELPHI_XE2_UP} 31 | {$IFEND} 32 | 33 | {$IF CompilerVersion >= 33} 34 | {$DEFINE DELPHI_RIO_UP} 35 | {$IFEND} 36 | 37 | {$IFDEF DELPHI_2005_UP} 38 | {$DEFINE SUPPORTS_INLINE} 39 | {$ENDIF} 40 | 41 | {$IFDEF DELPHI_XE2_UP} 42 | {$DEFINE SUPPORTS_RTTI} 43 | {$DEFINE SUPPORTS_GENERICS} 44 | {$DEFINE RENAMED_NAMESPACE} 45 | {$ENDIF} 46 | 47 | {$ENDIF FPC} 48 | 49 | -------------------------------------------------------------------------------- /Ext/VCLStyleUtils/DDetours/Source/LegacyTypes.pas: -------------------------------------------------------------------------------- 1 | // ************************************************************************************************** 2 | // 3 | // https://github.com/MahdiSafsafi/DDetours 4 | // 5 | // ************************************************************************************************** 6 | 7 | unit LegacyTypes; 8 | 9 | interface 10 | 11 | {$I DDetoursDefs.inc} 12 | 13 | type 14 | 15 | {$IFNDEF FPC} 16 | {$IFNDEF DELPHI_XE_UP} 17 | NativeInt = Integer; 18 | NativeUInt = Cardinal; 19 | PNativeInt = ^NativeInt; 20 | PNativeUInt = ^NativeUInt; 21 | {$IFDEF MSWINDOWS} 22 | TThreadID = LongWord; 23 | {$ENDIF MSWINDOWS} 24 | {$ENDIF DELPHI_XE_UP} 25 | {$ENDIF FPC} 26 | Int8 = Shortint; 27 | Int16 = Smallint; 28 | Int32 = Integer; 29 | 30 | UInt8 = Byte; 31 | UInt16 = Word; 32 | UInt32 = Cardinal; 33 | 34 | PInt8 = ^Int8; 35 | PInt16 = ^Int16; 36 | PInt32 = ^Int32; 37 | PInt64 = ^Int64; 38 | 39 | PUInt8 = ^UInt8; 40 | PUInt16 = ^UInt16; 41 | PUInt32 = ^UInt32; 42 | PUInt64 = ^UInt64; 43 | 44 | SIZE_T = NativeUInt; 45 | 46 | implementation 47 | 48 | end. 49 | -------------------------------------------------------------------------------- /Ext/VCLStyleUtils/DDetours/Source/TlHelp32.inc: -------------------------------------------------------------------------------- 1 | { TlHelp32 types for fpc } 2 | 3 | const 4 | TH32CS_SNAPHEAPLIST = $00000001; 5 | TH32CS_SNAPPROCESS = $00000002; 6 | TH32CS_SNAPTHREAD = $00000004; 7 | TH32CS_SNAPMODULE = $00000008; 8 | TH32CS_SNAPALL = TH32CS_SNAPHEAPLIST or TH32CS_SNAPPROCESS or 9 | TH32CS_SNAPTHREAD or TH32CS_SNAPMODULE; 10 | TH32CS_INHERIT = $80000000; 11 | 12 | TLS_OUT_OF_INDEXES = DWORD($FFFFFFFF); // FPC does not declare TLS_OUT_OF_INDEXES. 13 | 14 | type 15 | tagTHREADENTRY32 = record 16 | dwSize: DWORD; 17 | cntUsage: DWORD; 18 | th32ThreadID: DWORD; 19 | th32OwnerProcessID: DWORD; 20 | tpBasePri: Longint; 21 | tpDeltaPri: Longint; 22 | dwFlags: DWORD; 23 | end; 24 | THREADENTRY32 = tagTHREADENTRY32; 25 | PTHREADENTRY32 = ^tagTHREADENTRY32; 26 | LPTHREADENTRY32 = ^tagTHREADENTRY32; 27 | TThreadEntry32 = tagTHREADENTRY32; 28 | 29 | TThread32First = function (hSnapshot: THandle; var lpte: TThreadEntry32): BOOL stdcall; 30 | TThread32Next = function (hSnapshot: THandle; var lpte: TThreadENtry32): BOOL stdcall; 31 | TCreateToolhelp32Snapshot = function (dwFlags, th32ProcessID: DWORD): THandle; stdcall; 32 | -------------------------------------------------------------------------------- /Icons/fattura elettronica.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Icons/fattura elettronica.png -------------------------------------------------------------------------------- /Icons/landscape.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/logo.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Icons/logo.ico -------------------------------------------------------------------------------- /Icons/portrait.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | -------------------------------------------------------------------------------- /Icons/save_html.svg: -------------------------------------------------------------------------------- 1 |  2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | HTML 15 | 16 | 17 | -------------------------------------------------------------------------------- /Icons/save_pdf.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | PDF 15 | 16 | 17 | -------------------------------------------------------------------------------- /Icons/save_xml.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | XML 15 | 16 | 17 | -------------------------------------------------------------------------------- /Icons/setup.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Icons/setup.ico -------------------------------------------------------------------------------- /Icons/xml-gray.svg: -------------------------------------------------------------------------------- 1 |  2 | 4 | 5 | 7 | 8 | 9 | 10 | 12 | 14 | 15 | 16 | 18 | 20 | 22 | 24 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /Icons/xml.svg: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 7 | 8 | 9 | 10 | 12 | 14 | 15 | 16 | 18 | 20 | 22 | 24 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /Icons/xsl-gray.svg: -------------------------------------------------------------------------------- 1 |  2 | 5 | 6 | 8 | 10 | 11 | 13 | 15 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /Icons/xsl.svg: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | 8 | 10 | 11 | 13 | 15 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /Images/About.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Images/About.png -------------------------------------------------------------------------------- /Images/FEViewer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Images/FEViewer.png -------------------------------------------------------------------------------- /Images/FExplorer.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Images/FExplorer.png -------------------------------------------------------------------------------- /Images/FExplorerLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Images/FExplorerLogo.png -------------------------------------------------------------------------------- /Images/SettingsAnteprima.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Images/SettingsAnteprima.png -------------------------------------------------------------------------------- /Images/SettingsAvanzate.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Images/SettingsAvanzate.png -------------------------------------------------------------------------------- /Images/SettingsCarattere.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Images/SettingsCarattere.png -------------------------------------------------------------------------------- /Images/SettingsColoriTesto.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Images/SettingsColoriTesto.png -------------------------------------------------------------------------------- /Images/SettingsPDFLayout.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Images/SettingsPDFLayout.png -------------------------------------------------------------------------------- /Images/SettingsTema.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Images/SettingsTema.png -------------------------------------------------------------------------------- /Images/Setup.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Images/Setup.png -------------------------------------------------------------------------------- /Setup/FExplorer.iss: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Setup/FExplorer.iss -------------------------------------------------------------------------------- /Setup/Settings.ini: -------------------------------------------------------------------------------- 1 | [Global] 2 | FontSize=14 3 | FontName=Consolas 4 | StyleName=Windows10 5 | ShowEditor=1 6 | SplitterPos=50 7 | PreferD2D=0 -------------------------------------------------------------------------------- /Setup/SupportingDelphi.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Setup/SupportingDelphi.jpg -------------------------------------------------------------------------------- /Setup/WizEtheaImage.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Setup/WizEtheaImage.bmp -------------------------------------------------------------------------------- /Setup/WizEtheaSmallImage.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Setup/WizEtheaSmallImage.bmp -------------------------------------------------------------------------------- /Setup/WizEtheaSmallImage110x106.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Setup/WizEtheaSmallImage110x106.bmp -------------------------------------------------------------------------------- /Setup/WizEtheaSmallImage119x123.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Setup/WizEtheaSmallImage119x123.bmp -------------------------------------------------------------------------------- /Setup/WizEtheaSmallImage138x140.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Setup/WizEtheaSmallImage138x140.bmp -------------------------------------------------------------------------------- /Setup/WizEtheaSmallImage64x68.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Setup/WizEtheaSmallImage64x68.bmp -------------------------------------------------------------------------------- /Setup/WizEtheaSmallImage83x80.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Setup/WizEtheaSmallImage83x80.bmp -------------------------------------------------------------------------------- /Setup/WizEtheaSmallImage92x97.bmp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Setup/WizEtheaSmallImage92x97.bmp -------------------------------------------------------------------------------- /Source/EtheaMultires.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Source/EtheaMultires.ico -------------------------------------------------------------------------------- /Source/FEViewer.dpr: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Source/FEViewer.dpr -------------------------------------------------------------------------------- /Source/FEViewer.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Source/FEViewer.res -------------------------------------------------------------------------------- /Source/FExplorer.InvoiceToImage.pas: -------------------------------------------------------------------------------- 1 | {******************************************************************************} 2 | { } 3 | { FExplorer: Shell extensions per Fattura Elettronica } 4 | { (Preview Panel, Thumbnail Icon, F.E.Viewer) } 5 | { } 6 | { Copyright (c) 2021-2025 (Ethea S.r.l.) } 7 | { Author: Carlo Barazzetta } 8 | { } 9 | { https://github.com/EtheaDev/FExplorer } 10 | { } 11 | {******************************************************************************} 12 | { } 13 | { Licensed under the Apache License, Version 2.0 (the "License"); } 14 | { you may not use this file except in compliance with the License. } 15 | { You may obtain a copy of the License at } 16 | { } 17 | { http://www.apache.org/licenses/LICENSE-2.0 } 18 | { } 19 | { Unless required by applicable law or agreed to in writing, software } 20 | { distributed under the License is distributed on an "AS IS" BASIS, } 21 | { WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. } 22 | { See the License for the specific language governing permissions and } 23 | { limitations under the License. } 24 | { } 25 | {******************************************************************************} 26 | unit FExplorer.InvoiceToImage; 27 | 28 | interface 29 | 30 | uses 31 | System.SysUtils 32 | , System.Classes; 33 | 34 | type 35 | TInvoiceToSVG = class 36 | private 37 | FSVGTemplate: string; 38 | FInvoiceXML: string; 39 | function GetOutSVGtext: string; 40 | procedure SetInvoiceXML(const Value: string); 41 | procedure SetSVGTemplate(const Value: string); 42 | protected 43 | public 44 | property SVGTemplate: string read FSVGTemplate write SetSVGTemplate; 45 | property InvoiceXML: string read FInvoiceXML write SetInvoiceXML; 46 | property OutSVGText: string read GetOutSVGtext; 47 | end; 48 | 49 | 50 | implementation 51 | 52 | { TInvoiceToSVG } 53 | 54 | function TInvoiceToSVG.GetOutSVGtext: string; 55 | 56 | begin 57 | //Applica i dati della fattura xml al template svg 58 | Result := FSVGTemplate; 59 | if FInvoiceXML <> '' then 60 | begin 61 | 62 | end; 63 | end; 64 | 65 | procedure TInvoiceToSVG.SetInvoiceXML(const Value: string); 66 | begin 67 | FInvoiceXML := Value; 68 | end; 69 | 70 | procedure TInvoiceToSVG.SetSVGTemplate(const Value: string); 71 | begin 72 | FSVGTemplate := Value; 73 | end; 74 | 75 | end. 76 | -------------------------------------------------------------------------------- /Source/FExplorer.Main.pas: -------------------------------------------------------------------------------- 1 | {******************************************************************************} 2 | { } 3 | { FExplorer: Shell extensions per Fattura Elettronica } 4 | { (Preview Panel, Thumbnail Icon, F.E.Viewer) } 5 | { } 6 | { Copyright (c) 2021-2025 (Ethea S.r.l.) } 7 | { Author: Carlo Barazzetta } 8 | { } 9 | { https://github.com/EtheaDev/FExplorer } 10 | { } 11 | {******************************************************************************} 12 | { } 13 | { Licensed under the Apache License, Version 2.0 (the "License"); } 14 | { you may not use this file except in compliance with the License. } 15 | { You may obtain a copy of the License at } 16 | { } 17 | { http://www.apache.org/licenses/LICENSE-2.0 } 18 | { } 19 | { Unless required by applicable law or agreed to in writing, software } 20 | { distributed under the License is distributed on an "AS IS" BASIS, } 21 | { WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. } 22 | { See the License for the specific language governing permissions and } 23 | { limitations under the License. } 24 | { } 25 | { The Original Code is Main.pas. } 26 | { Delphi Preview Handler https://github.com/RRUZ/delphi-preview-handler } 27 | { } 28 | { The Initial Developer of the Original Code is Rodrigo Ruz V. } 29 | { Portions created by Rodrigo Ruz V. are Copyright 2011-2021 Rodrigo Ruz V. } 30 | { All Rights Reserved. } 31 | {******************************************************************************} 32 | unit FExplorer.Main; 33 | 34 | interface 35 | 36 | implementation 37 | 38 | uses 39 | FExplorer.ThumbnailHandler, 40 | FExplorer.PreviewHandler; 41 | 42 | initialization 43 | {$IFDEF WIN64} 44 | TFEPreviewHandler.RegisterPreview(MyFE_PreviewHandlerGUID_64, 45 | 'SVG.PreviewHandler', 'Delphi F.E. Preview Handler 64bit'); 46 | {$ELSE} 47 | TFEPreviewHandler.RegisterPreview(MyFE_PreviewHandlerGUID_32, 48 | 'SVG.PreviewHandler', 'Delphi F.E. Preview Handler 32bit'); 49 | {$ENDIF} 50 | 51 | {$IFDEF WIN64} 52 | TFEThumbnailProvider.RegisterThumbnailProvider(MyFE_ThumbnailProviderGUID, 53 | 'SVG.ThumbnailProvider', 'Delphi F.E. Thumbnail Provider 64bit'); 54 | {$ELSE} 55 | TFEThumbnailProvider.RegisterThumbnailProvider(MyFE_ThumbnailProviderGUID, 56 | 'SVG.ThumbnailProvider', 'Delphi F.E. Thumbnail Provider 32bit'); 57 | {$ENDIF} 58 | 59 | end. 60 | 61 | -------------------------------------------------------------------------------- /Source/FExplorer.PreviewForm.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Source/FExplorer.PreviewForm.pas -------------------------------------------------------------------------------- /Source/FExplorer.PreviewHandler.pas: -------------------------------------------------------------------------------- 1 | {******************************************************************************} 2 | { } 3 | { FExplorer: Shell extensions per Fattura Elettronica } 4 | { (Preview Panel, Thumbnail Icon, F.E.Viewer) } 5 | { } 6 | { Copyright (c) 2021-2025 (Ethea S.r.l.) } 7 | { Author: Carlo Barazzetta } 8 | { } 9 | { https://github.com/EtheaDev/FExplorer } 10 | { } 11 | {******************************************************************************} 12 | { } 13 | { Licensed under the Apache License, Version 2.0 (the "License"); } 14 | { you may not use this file except in compliance with the License. } 15 | { You may obtain a copy of the License at } 16 | { } 17 | { http://www.apache.org/licenses/LICENSE-2.0 } 18 | { } 19 | { Unless required by applicable law or agreed to in writing, software } 20 | { distributed under the License is distributed on an "AS IS" BASIS, } 21 | { WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. } 22 | { See the License for the specific language governing permissions and } 23 | { limitations under the License. } 24 | { } 25 | { } 26 | { The Initial Developer of the Original Code is Rodrigo Ruz V. } 27 | { Portions created by Rodrigo Ruz V. are Copyright 2011-2021 Rodrigo Ruz V. } 28 | { All Rights Reserved. } 29 | {******************************************************************************} 30 | unit FExplorer.PreviewHandler; 31 | 32 | interface 33 | 34 | uses 35 | Classes, 36 | Controls, 37 | StdCtrls, 38 | SysUtils, 39 | uCommonPreviewHandler, 40 | uStreamPreviewHandler, 41 | uPreviewHandler; 42 | 43 | type 44 | TFEPreviewHandler = class(TBasePreviewHandler) 45 | public 46 | constructor Create(AParent: TWinControl); override; 47 | end; 48 | 49 | const 50 | MyFE_PreviewHandlerGUID_64: TGUID = '{5ec7f7fc-518f-4364-b3e4-07de856df0a1}'; 51 | MyFE_PreviewHandlerGUID_32: TGUID = '{917480ec-2eaf-4819-a4bd-e70df8f349f2}'; 52 | 53 | implementation 54 | 55 | Uses 56 | uLogExcept, 57 | SynEdit, 58 | Windows, 59 | Forms, 60 | uMisc; 61 | type 62 | TWinControlClass = class(TWinControl); 63 | 64 | constructor TFEPreviewHandler.Create(AParent: TWinControl); 65 | begin 66 | TLogPreview.Add('TFEPreviewHandler.Create'); 67 | inherited Create(AParent); 68 | TLogPreview.Add('TFEPreviewHandler Done'); 69 | end; 70 | 71 | end. 72 | -------------------------------------------------------------------------------- /Source/FExplorer.Splash.dfm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Source/FExplorer.Splash.dfm -------------------------------------------------------------------------------- /Source/FExplorer.ViewerMainForm.pas: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Source/FExplorer.ViewerMainForm.pas -------------------------------------------------------------------------------- /Source/FExplorer.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Source/FExplorer.res -------------------------------------------------------------------------------- /Source/FExplorer32.res: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/EtheaDev/FExplorer/9288defedc37696e1df40e6afee35bc3b32f89a0/Source/FExplorer32.res -------------------------------------------------------------------------------- /Source/FExplorerGroup.groupproj: -------------------------------------------------------------------------------- 1 |  2 | 3 | {6fa3e40b-d28a-4b62-8ec1-c541dc6e3433} 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | Default.Personality.12 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 | -------------------------------------------------------------------------------- /Source/dlgConfirmReplace.dfm: -------------------------------------------------------------------------------- 1 | object ConfirmReplaceDialog: TConfirmReplaceDialog 2 | Left = 176 3 | Top = 158 4 | BorderStyle = bsDialog 5 | Caption = 'Confirm replace' 6 | ClientHeight = 98 7 | ClientWidth = 328 8 | Color = clBtnFace 9 | Font.Charset = DEFAULT_CHARSET 10 | Font.Color = clWindowText 11 | Font.Height = -12 12 | Font.Name = 'Segoe UI' 13 | Font.Style = [] 14 | OldCreateOrder = False 15 | OnCreate = FormCreate 16 | OnDestroy = FormDestroy 17 | PixelsPerInch = 96 18 | TextHeight = 15 19 | object lblConfirmation: TLabel 20 | Left = 60 21 | Top = 12 22 | Width = 261 23 | Height = 44 24 | AutoSize = False 25 | WordWrap = True 26 | end 27 | object Image: TImage 28 | Left = 16 29 | Top = 16 30 | Width = 32 31 | Height = 32 32 | end 33 | object btnReplace: TButton 34 | Left = 8 35 | Top = 67 36 | Width = 75 37 | Height = 23 38 | Caption = '&Yes' 39 | Default = True 40 | ModalResult = 6 41 | TabOrder = 0 42 | end 43 | object btnSkip: TButton 44 | Left = 87 45 | Top = 67 46 | Width = 75 47 | Height = 23 48 | Caption = '&No' 49 | ModalResult = 7 50 | TabOrder = 1 51 | end 52 | object btnCancel: TButton 53 | Left = 166 54 | Top = 67 55 | Width = 75 56 | Height = 23 57 | Cancel = True 58 | Caption = 'Cancel' 59 | ModalResult = 2 60 | TabOrder = 2 61 | end 62 | object btnReplaceAll: TButton 63 | Left = 245 64 | Top = 67 65 | Width = 75 66 | Height = 23 67 | Caption = 'Yes to &all' 68 | ModalResult = 10 69 | TabOrder = 3 70 | end 71 | end 72 | -------------------------------------------------------------------------------- /Source/dlgConfirmReplace.pas: -------------------------------------------------------------------------------- 1 | {------------------------------------------------------------------------------- 2 | The contents of this file are subject to the Mozilla Public License 3 | Version 1.1 (the "License"); you may not use this file except in compliance 4 | with the License. You may obtain a copy of the License at 5 | http://www.mozilla.org/MPL/ 6 | 7 | Software distributed under the License is distributed on an "AS IS" basis, 8 | WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for 9 | the specific language governing rights and limitations under the License. 10 | 11 | The Original Code is: dlgConfirmReplace.dpr, released 2000-06-23. 12 | 13 | The Original Code is part of the SearchReplaceDemo project, written by 14 | Michael Hieke for the SynEdit component suite. 15 | All Rights Reserved. 16 | 17 | Contributors to the SynEdit project are listed in the Contributors.txt file. 18 | 19 | Alternatively, the contents of this file may be used under the terms of the 20 | GNU General Public License Version 2 or later (the "GPL"), in which case 21 | the provisions of the GPL are applicable instead of those above. 22 | If you wish to allow use of your version of this file only under the terms 23 | of the GPL and not to allow others to use your version of this file 24 | under the MPL, indicate your decision by deleting the provisions above and 25 | replace them with the notice and other provisions required by the GPL. 26 | If you do not delete the provisions above, a recipient may use your version 27 | of this file under either the MPL or the GPL. 28 | 29 | $Id: dlgConfirmReplace.pas,v 1.2 2002/11/05 17:04:02 giuseppem Exp $ 30 | 31 | You may retrieve the latest version of this file at the SynEdit home page, 32 | located at http://SynEdit.SourceForge.net 33 | 34 | Contributors: Carlo Barazzetta 35 | 36 | Known Issues: 37 | -------------------------------------------------------------------------------} 38 | unit dlgConfirmReplace; 39 | 40 | {$I SynEdit.inc} 41 | 42 | interface 43 | 44 | uses 45 | Windows, SysUtils, Classes, Graphics, Controls, Forms, 46 | StdCtrls, ExtCtrls; 47 | 48 | type 49 | TConfirmReplaceDialog = class(TForm) 50 | btnReplace: TButton; 51 | lblConfirmation: TLabel; 52 | btnSkip: TButton; 53 | btnCancel: TButton; 54 | btnReplaceAll: TButton; 55 | Image: TImage; 56 | procedure FormCreate(Sender: TObject); 57 | procedure FormDestroy(Sender: TObject); 58 | public 59 | procedure PrepareShow(AEditorRect: TRect; X, Y1, Y2: integer; 60 | AReplaceText: string); 61 | end; 62 | 63 | var 64 | ConfirmReplaceDialog: TConfirmReplaceDialog; 65 | 66 | implementation 67 | 68 | {$R *.DFM} 69 | 70 | resourcestring 71 | SAskReplaceText = 'Replace this occurence of "%s"?'; 72 | 73 | { TConfirmReplaceDialog } 74 | 75 | procedure TConfirmReplaceDialog.FormCreate(Sender: TObject); 76 | begin 77 | Image.Picture.Icon.Handle := LoadIcon(0, IDI_QUESTION); 78 | end; 79 | 80 | procedure TConfirmReplaceDialog.FormDestroy(Sender: TObject); 81 | begin 82 | ConfirmReplaceDialog := nil; 83 | end; 84 | 85 | procedure TConfirmReplaceDialog.PrepareShow(AEditorRect: TRect; 86 | X, Y1, Y2: integer; AReplaceText: string); 87 | var 88 | nW, nH: integer; 89 | begin 90 | lblConfirmation.Caption := Format(SAskReplaceText, [AReplaceText]); 91 | nW := AEditorRect.Right - AEditorRect.Left; 92 | nH := AEditorRect.Bottom - AEditorRect.Top; 93 | 94 | if nW <= Width then 95 | X := AEditorRect.Left - (Width - nW) div 2 96 | else 97 | begin 98 | if X + Width > AEditorRect.Right then 99 | X := AEditorRect.Right - Width; 100 | end; 101 | if Y2 > AEditorRect.Top + MulDiv(nH, 2, 3) then 102 | Y2 := Y1 - Height - 4 103 | else 104 | Inc(Y2, 4); 105 | SetBounds(X, Y2, Width, Height); 106 | end; 107 | 108 | end. 109 | -------------------------------------------------------------------------------- /Source/dlgReplaceText.dfm: -------------------------------------------------------------------------------- 1 | inherited TextReplaceDialog: TTextReplaceDialog 2 | Caption = 'Replace text' 3 | ClientHeight = 206 4 | OldCreateOrder = True 5 | ExplicitHeight = 235 6 | PixelsPerInch = 96 7 | TextHeight = 13 8 | object ReplaceWidthLabel: TLabel [0] 9 | Left = 8 10 | Top = 41 11 | Width = 82 12 | Height = 13 13 | Alignment = taRightJustify 14 | AutoSize = False 15 | Caption = '&Replace with:' 16 | end 17 | inherited cbSearchText: TComboBox 18 | TabOrder = 5 19 | end 20 | inherited FSearchOptions: TGroupBox 21 | Top = 70 22 | ExplicitTop = 70 23 | end 24 | inherited FSearchDirection: TRadioGroup 25 | Top = 70 26 | ExplicitTop = 70 27 | end 28 | inherited btnOK: TButton 29 | Top = 174 30 | ExplicitTop = 174 31 | end 32 | object cbReplaceText: TComboBox [6] 33 | Left = 96 34 | Top = 37 35 | Width = 228 36 | Height = 21 37 | TabOrder = 0 38 | end 39 | inherited btnCancel: TButton 40 | Top = 174 41 | ExplicitTop = 174 42 | end 43 | end 44 | -------------------------------------------------------------------------------- /Source/dlgSearchText.dfm: -------------------------------------------------------------------------------- 1 | object TextSearchDialog: TTextSearchDialog 2 | Left = 132 3 | Top = 168 4 | BorderStyle = bsDialog 5 | Caption = 'Search Text' 6 | ClientHeight = 180 7 | ClientWidth = 332 8 | Color = clBtnFace 9 | Font.Charset = ANSI_CHARSET 10 | Font.Color = clWindowText 11 | Font.Height = -11 12 | Font.Name = 'Segoe UI' 13 | Font.Style = [] 14 | OldCreateOrder = False 15 | Position = poOwnerFormCenter 16 | OnCloseQuery = FormCloseQuery 17 | PixelsPerInch = 96 18 | TextHeight = 13 19 | object SearchForLabel: TLabel 20 | Left = 8 21 | Top = 12 22 | Width = 82 23 | Height = 13 24 | Alignment = taRightJustify 25 | AutoSize = False 26 | Caption = '&Search for:' 27 | end 28 | object cbSearchText: TComboBox 29 | Left = 96 30 | Top = 8 31 | Width = 228 32 | Height = 21 33 | TabOrder = 0 34 | end 35 | object FSearchOptions: TGroupBox 36 | Left = 8 37 | Top = 40 38 | Width = 154 39 | Height = 127 40 | Caption = 'Options' 41 | TabOrder = 1 42 | object cbSearchCaseSensitive: TCheckBox 43 | Left = 8 44 | Top = 17 45 | Width = 140 46 | Height = 17 47 | Caption = 'C&ase sensitivity' 48 | TabOrder = 0 49 | end 50 | object cbSearchWholeWords: TCheckBox 51 | Left = 8 52 | Top = 39 53 | Width = 140 54 | Height = 17 55 | Caption = '&Whole words only' 56 | TabOrder = 1 57 | end 58 | object cbSearchFromCursor: TCheckBox 59 | Left = 8 60 | Top = 61 61 | Width = 140 62 | Height = 17 63 | Caption = 'Search from &caret' 64 | TabOrder = 2 65 | end 66 | object cbSearchSelectedOnly: TCheckBox 67 | Left = 8 68 | Top = 83 69 | Width = 140 70 | Height = 17 71 | Caption = '&Selected text only' 72 | TabOrder = 3 73 | end 74 | object cbRegularExpression: TCheckBox 75 | Left = 8 76 | Top = 104 77 | Width = 140 78 | Height = 17 79 | Caption = '&Regular expression' 80 | TabOrder = 4 81 | end 82 | end 83 | object FSearchDirection: TRadioGroup 84 | Left = 170 85 | Top = 40 86 | Width = 154 87 | Height = 65 88 | Caption = 'Direction' 89 | ItemIndex = 0 90 | Items.Strings = ( 91 | '&Forward' 92 | '&Backward') 93 | TabOrder = 2 94 | end 95 | object btnOK: TButton 96 | Left = 170 97 | Top = 149 98 | Width = 75 99 | Height = 23 100 | Caption = 'OK' 101 | Default = True 102 | ModalResult = 1 103 | TabOrder = 3 104 | end 105 | object btnCancel: TButton 106 | Left = 249 107 | Top = 149 108 | Width = 75 109 | Height = 23 110 | Cancel = True 111 | Caption = 'Cancel' 112 | ModalResult = 2 113 | TabOrder = 4 114 | end 115 | end 116 | -------------------------------------------------------------------------------- /Source/uCommonPreviewHandler.pas: -------------------------------------------------------------------------------- 1 | // ************************************************************************************************** 2 | // 3 | // Unit uCommonPreviewHandler 4 | // unit for the Delphi Preview Handler https://github.com/RRUZ/delphi-preview-handler 5 | // 6 | // The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); 7 | // you may not use this file except in compliance with the License. You may obtain a copy of the 8 | // License at http://www.mozilla.org/MPL/ 9 | // 10 | // Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF 11 | // ANY KIND, either express or implied. See the License for the specific language governing rights 12 | // and limitations under the License. 13 | // 14 | // The Original Code is uCommonPreviewHandler.pas. 15 | // 16 | // The Initial Developer of the Original Code is Rodrigo Ruz V. 17 | // Portions created by Rodrigo Ruz V. are Copyright (C) 2011-2021 Rodrigo Ruz V. 18 | // All Rights Reserved. 19 | // 20 | // ************************************************************************************************* 21 | unit uCommonPreviewHandler; 22 | 23 | interface 24 | 25 | {$DEFINE USE_TStreamPreviewHandler} 26 | 27 | uses 28 | Classes, 29 | Controls, 30 | StdCtrls, 31 | SysUtils, 32 | FExplorer.PreviewForm, 33 | {$IFDEF USE_TStreamPreviewHandler} 34 | uStreamAdapter, 35 | uStreamPreviewHandler, 36 | {$ELSE} 37 | uFilePreviewHandler, 38 | {$ENDIF} 39 | uPreviewHandler; 40 | 41 | type 42 | {$IFDEF USE_TStreamPreviewHandler} 43 | TBasePreviewHandler = class(TStreamPreviewHandler) 44 | {$ELSE} 45 | TBasePreviewHandler = class(TFilePreviewHandler) 46 | {$ENDIF} 47 | end; 48 | 49 | implementation 50 | 51 | end. 52 | -------------------------------------------------------------------------------- /Source/uFilePreviewHandler.pas: -------------------------------------------------------------------------------- 1 | // ************************************************************************************************** 2 | // 3 | // Unit uFilePreviewHandler 4 | // unit for the Delphi Preview Handler https://github.com/RRUZ/delphi-preview-handler 5 | // 6 | // The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); 7 | // you may not use this file except in compliance with the License. You may obtain a copy of the 8 | // License at http://www.mozilla.org/MPL/ 9 | // 10 | // Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF 11 | // ANY KIND, either express or implied. See the License for the specific language governing rights 12 | // and limitations under the License. 13 | // 14 | // The Original Code is uFilePreviewHandler.pas. 15 | // 16 | // The Initial Developer of the Original Code is Rodrigo Ruz V. 17 | // Portions created by Rodrigo Ruz V. are Copyright (C) 2011-2021 Rodrigo Ruz V. 18 | // All Rights Reserved. 19 | // 20 | // ************************************************************************************************* 21 | 22 | unit uFilePreviewHandler; 23 | 24 | interface 25 | 26 | uses 27 | ComObj, 28 | uPreviewHandler; 29 | 30 | type 31 | TFilePreviewHandler = class abstract(TPreviewHandler) 32 | public 33 | class function GetComClass: TComClass; override; final; 34 | end; 35 | 36 | implementation 37 | 38 | uses 39 | Windows, 40 | PropSys, 41 | SysUtils, 42 | uLogExcept, 43 | uMisc; 44 | 45 | type 46 | TComFilePreviewHandler = class(TComPreviewHandler, IInitializeWithFile) 47 | // strict private 48 | function IInitializeWithFile.Initialize = IInitializeWithFile_Initialize; 49 | function IInitializeWithFile_Initialize(pszFilePath: LPCWSTR; grfMode: DWORD): HRESULT; stdcall; 50 | private 51 | FFilePath: TFileName; 52 | FMode: DWORD; 53 | function GetPreviewHandler: TFilePreviewHandler; 54 | protected 55 | procedure InternalDoPreview; override; 56 | procedure InternalUnload; override; 57 | property PreviewHandler: TFilePreviewHandler read GetPreviewHandler; 58 | property FilePath: TFileName read FFilePath; 59 | property Mode: DWORD read FMode; 60 | end; 61 | 62 | function TComFilePreviewHandler.GetPreviewHandler: TFilePreviewHandler; 63 | begin 64 | Result := inherited PreviewHandler as TFilePreviewHandler; 65 | end; 66 | 67 | function TComFilePreviewHandler.IInitializeWithFile_Initialize(pszFilePath: LPCWSTR; grfMode: DWORD): HRESULT; 68 | begin 69 | FFilePath := pszFilePath; 70 | Initialize_GDI; 71 | FMode := grfMode; 72 | Result := S_OK; 73 | end; 74 | 75 | procedure TComFilePreviewHandler.InternalDoPreview; 76 | begin 77 | TLogPreview.Add('TComFilePreviewHandler.InternalDoPreview'); 78 | CheckContainer; 79 | Container.LoadFromFile(FFilePath); 80 | Container.Show; 81 | end; 82 | 83 | procedure TComFilePreviewHandler.InternalUnload; 84 | begin 85 | FFilePath := ''; 86 | end; 87 | 88 | class function TFilePreviewHandler.GetComClass: TComClass; 89 | begin 90 | Result := TComFilePreviewHandler; 91 | end; 92 | 93 | end. 94 | -------------------------------------------------------------------------------- /Source/uLogExcept.pas: -------------------------------------------------------------------------------- 1 | // ************************************************************************************************** 2 | // 3 | // Unit uLogExcept 4 | // unit for the Delphi Preview Handler https://github.com/RRUZ/delphi-preview-handler 5 | // 6 | // The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); 7 | // you may not use this file except in compliance with the License. You may obtain a copy of the 8 | // License at http://www.mozilla.org/MPL/ 9 | // 10 | // Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF 11 | // ANY KIND, either express or implied. See the License for the specific language governing rights 12 | // and limitations under the License. 13 | // 14 | // The Original Code is uLogExcept.pas. 15 | // 16 | // The Initial Developer of the Original Code is Rodrigo Ruz V. 17 | // Portions created by Rodrigo Ruz V. are Copyright (C) 2011-2021 Rodrigo Ruz V. 18 | // All Rights Reserved. 19 | // 20 | // ************************************************************************************************* 21 | 22 | unit uLogExcept; 23 | 24 | interface 25 | 26 | Uses 27 | System.SysUtils, 28 | System.Classes; 29 | 30 | type 31 | TLogPreview = class 32 | private 33 | FLogStream: TStream; 34 | class var FLogFile: string; 35 | class procedure InitLogFile; static; 36 | public 37 | property LogStream: TStream read FLogStream write FLogStream; 38 | class procedure Add(const AMessage: string); overload; 39 | class procedure Add(const AException: Exception); overload; 40 | end; 41 | 42 | implementation 43 | 44 | uses 45 | uMisc, 46 | IOUtils; 47 | 48 | {$IFDEF DEBUG} 49 | {$DEFINE ENABLELOG} 50 | {$ENDIF} 51 | 52 | procedure AppendAllText(const FileName, Contents: string); 53 | {$IFDEF ENABLELOG} 54 | var 55 | LFileStream: TFileStream; 56 | LBuffer: TBytes; 57 | {$ENDIF} 58 | begin 59 | {$IFDEF ENABLELOG} 60 | if (TFile.Exists(FileName)) then 61 | LFileStream := TFileStream.Create(FileName, fmOpenReadWrite or fmShareDenyNone) 62 | else 63 | LFileStream := TFileStream.Create(FileName, fmCreate or fmShareDenyNone); 64 | 65 | try 66 | LFileStream.Seek(0, soFromEnd); 67 | LBuffer := TEncoding.ANSI.GetBytes(Contents); 68 | LFileStream.WriteBuffer(LBuffer, Length(LBuffer)); 69 | finally 70 | LFileStream.Free; 71 | end; 72 | {$ENDIF} 73 | end; 74 | 75 | { TLogException } 76 | 77 | class procedure TLogPreview.InitLogFile; 78 | begin 79 | if FLogFile = '' then 80 | FLogFile := IncludeTrailingPathDelimiter(GetTempDirectory) + 'FExplorer.log'; 81 | end; 82 | 83 | class procedure TLogPreview.Add(const AMessage: string); 84 | begin 85 | {$IFDEF ENABLELOG} 86 | try 87 | InitLogFile; 88 | //if (Copy(AMessage,1,4) = 'GDI+') then 89 | AppendAllText(FLogFile, FormatDateTime('hh:nn:ss.zzz', Now) + ' ' + AMessage + sLineBreak); 90 | except 91 | on e: EFOpenError do; 92 | end; 93 | {$ENDIF} 94 | end; 95 | 96 | class procedure TLogPreview.Add(const AException: Exception); 97 | begin 98 | try 99 | InitLogFile; 100 | AppendAllText(FLogFile, Format('%s %s StackTrace %s %s', [FormatDateTime('hh:nn:ss.zzz', Now), 101 | AException.ClassName+': '+AException.Message, 102 | AException.StackTrace, sLineBreak])); 103 | except 104 | on e: EFOpenError do; 105 | end; 106 | end; 107 | 108 | initialization 109 | 110 | end. 111 | -------------------------------------------------------------------------------- /Source/uPreviewContainer.dfm: -------------------------------------------------------------------------------- 1 | object PreviewContainer: TPreviewContainer 2 | Left = 753 3 | Top = 443 4 | ClientHeight = 273 5 | ClientWidth = 296 6 | Color = clBtnFace 7 | Font.Charset = DEFAULT_CHARSET 8 | Font.Color = clWindowText 9 | Font.Height = -11 10 | Font.Name = 'Tahoma' 11 | Font.Style = [] 12 | OnCreate = FormCreate 13 | OnDestroy = FormDestroy 14 | TextHeight = 13 15 | end 16 | -------------------------------------------------------------------------------- /Source/uStackTrace.pas: -------------------------------------------------------------------------------- 1 | // ************************************************************************************************** 2 | // 3 | // Unit uStackTrace 4 | // unit for the Delphi Preview Handler https://github.com/RRUZ/delphi-preview-handler 5 | // 6 | // The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); 7 | // you may not use this file except in compliance with the License. You may obtain a copy of the 8 | // License at http://www.mozilla.org/MPL/ 9 | // 10 | // Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF 11 | // ANY KIND, either express or implied. See the License for the specific language governing rights 12 | // and limitations under the License. 13 | // 14 | // The Original Code is uStackTrace.pas. 15 | // 16 | // The Initial Developer of the Original Code is Rodrigo Ruz V. 17 | // Portions created by Rodrigo Ruz V. are Copyright (C) 2011-2021 Rodrigo Ruz V. 18 | // All Rights Reserved. 19 | // 20 | // ************************************************************************************************* 21 | 22 | unit uStackTrace; 23 | 24 | interface 25 | 26 | uses 27 | SysUtils, Classes, JclDebug; 28 | 29 | implementation 30 | 31 | function GetExceptionStackInfoProc(P: PExceptionRecord): Pointer; 32 | begin 33 | Result := TJclStackInfoList.Create(False, 0, nil); 34 | end; 35 | 36 | function GetStackInfoStringProc(Info: Pointer): string; 37 | var 38 | StackInfoList: TJclStackInfoList; 39 | List: TStringList; 40 | begin 41 | if Info = nil then 42 | Exit; 43 | List := TStringList.Create; 44 | try 45 | StackInfoList := TJclStackInfoList(Info); 46 | StackInfoList.AddToStrings(List); 47 | Result := List.Text; 48 | finally 49 | List.Free; 50 | end; 51 | end; 52 | 53 | procedure CleanUpStackInfoProc(Info: Pointer); 54 | begin 55 | FreeAndNil(TJclStackInfoList(Info)); 56 | end; 57 | 58 | initialization 59 | 60 | if JclStartExceptionTracking then 61 | begin 62 | Exception.GetExceptionStackInfoProc := GetExceptionStackInfoProc; 63 | Exception.GetStackInfoStringProc := GetStackInfoStringProc; 64 | Exception.CleanUpStackInfoProc := CleanUpStackInfoProc; 65 | end; 66 | 67 | finalization 68 | 69 | if JclExceptionTrackingActive then 70 | begin 71 | Exception.GetExceptionStackInfoProc := nil; 72 | Exception.GetStackInfoStringProc := nil; 73 | Exception.CleanUpStackInfoProc := nil; 74 | JclStopExceptionTracking; 75 | end; 76 | 77 | end. 78 | -------------------------------------------------------------------------------- /Source/uStreamAdapter.pas: -------------------------------------------------------------------------------- 1 | // ************************************************************************************************** 2 | // 3 | // Unit uStreamAdapter 4 | // unit for the Delphi Preview Handler https://github.com/RRUZ/delphi-preview-handler 5 | // 6 | // The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); 7 | // you may not use this file except in compliance with the License. You may obtain a copy of the 8 | // License at http://www.mozilla.org/MPL/ 9 | // 10 | // Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF 11 | // ANY KIND, either express or implied. See the License for the specific language governing rights 12 | // and limitations under the License. 13 | // 14 | // The Original Code is uStreamPreviewHandler.pas. 15 | // 16 | // The Initial Developer of the Original Code is Rodrigo Ruz V. 17 | // Portions created by Rodrigo Ruz V. are Copyright (C) 2011-2021 Rodrigo Ruz V. 18 | // All Rights Reserved. 19 | // 20 | // ************************************************************************************************* 21 | 22 | unit uStreamAdapter; 23 | 24 | interface 25 | 26 | uses 27 | ComObj, 28 | ActiveX, 29 | Classes; 30 | 31 | type 32 | TIStreamAdapter = class(TStream) 33 | private 34 | FBaseStream: IStream; 35 | protected 36 | function GetSize: Int64; override; 37 | procedure SetSize(NewSize: Longint); override; 38 | procedure SetSize(const NewSize: Int64); override; 39 | public 40 | constructor Create(Stream: IStream); 41 | function Read(var Buffer; Count: Longint): Longint; override; 42 | function Seek(const Offset: Int64; Origin: TSeekOrigin): Int64; overload; override; 43 | property BaseStream: IStream read FBaseStream; 44 | end; 45 | 46 | implementation 47 | 48 | uses 49 | PropSys, 50 | SysUtils; 51 | 52 | resourcestring 53 | sSetSizeNotImplemented = '%s.SetSize not implemented'; 54 | 55 | { TIStreamAdapter } 56 | constructor TIStreamAdapter.Create(Stream: IStream); 57 | begin 58 | inherited Create; 59 | FBaseStream := Stream; 60 | end; 61 | 62 | function TIStreamAdapter.GetSize: Int64; 63 | var 64 | statStg: TStatStg; 65 | grfStatFlag: Longint; 66 | begin 67 | Result := -1; 68 | grfStatFlag := STATFLAG_NONAME; 69 | if BaseStream.Stat(statStg, grfStatFlag) = S_OK then 70 | Result := statStg.cbSize; 71 | end; 72 | 73 | function TIStreamAdapter.Read(var Buffer; Count: Longint): Longint; 74 | begin 75 | BaseStream.Read(@Buffer, Count, @Result); 76 | end; 77 | 78 | function TIStreamAdapter.Seek(const Offset: Int64; Origin: TSeekOrigin): Int64; 79 | var 80 | LResult: LargeUInt; 81 | begin 82 | BaseStream.Seek(Offset, Ord(Origin), LResult); 83 | Result := LResult; 84 | end; 85 | 86 | procedure TIStreamAdapter.SetSize(const NewSize: Int64); 87 | begin 88 | raise EStreamError.CreateResFmt(@sSetSizeNotImplemented, [Classname]); 89 | end; 90 | 91 | procedure TIStreamAdapter.SetSize(NewSize: Longint); 92 | begin 93 | raise EStreamError.CreateResFmt(@sSetSizeNotImplemented, [Classname]); 94 | end; 95 | 96 | end. 97 | -------------------------------------------------------------------------------- /Source/uStreamPreviewHandler.pas: -------------------------------------------------------------------------------- 1 | // ************************************************************************************************** 2 | // 3 | // Unit uStreamPreviewHandler 4 | // unit for the Delphi Preview Handler https://github.com/RRUZ/delphi-preview-handler 5 | // 6 | // The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); 7 | // you may not use this file except in compliance with the License. You may obtain a copy of the 8 | // License at http://www.mozilla.org/MPL/ 9 | // 10 | // Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF 11 | // ANY KIND, either express or implied. See the License for the specific language governing rights 12 | // and limitations under the License. 13 | // 14 | // The Original Code is uStreamPreviewHandler.pas. 15 | // 16 | // The Initial Developer of the Original Code is Rodrigo Ruz V. 17 | // Portions created by Rodrigo Ruz V. are Copyright (C) 2011-2021 Rodrigo Ruz V. 18 | // All Rights Reserved. 19 | // 20 | // ************************************************************************************************* 21 | 22 | unit uStreamPreviewHandler; 23 | 24 | interface 25 | 26 | uses 27 | ComObj, 28 | ActiveX, 29 | Classes, 30 | uStreamAdapter, 31 | uPreviewHandler; 32 | 33 | type 34 | TStreamPreviewHandler = class abstract(TPreviewHandler) 35 | public 36 | class function GetComClass: TComClass; override; final; 37 | end; 38 | 39 | implementation 40 | 41 | uses 42 | PropSys, 43 | SysUtils, 44 | uLogExcept, 45 | uMisc; 46 | 47 | type 48 | TComStreamPreviewHandler = class(TComPreviewHandler, IInitializeWithStream) 49 | // strict private 50 | function IInitializeWithStream.Initialize = IInitializeWithStream_Initialize; 51 | function IInitializeWithStream_Initialize(const pstream: IStream; grfMode: Cardinal): HRESULT; stdcall; 52 | private 53 | FIStream: IStream; 54 | FMode: Cardinal; 55 | function GetPreviewHandler: TStreamPreviewHandler; 56 | protected 57 | procedure InternalUnload; override; 58 | procedure InternalDoPreview; override; 59 | property PreviewHandler: TStreamPreviewHandler read GetPreviewHandler; 60 | property Mode: Cardinal read FMode write FMode; 61 | property IStream: IStream read FIStream write FIStream; 62 | end; 63 | 64 | resourcestring 65 | sSetSizeNotImplemented = '%s.SetSize not implemented'; 66 | 67 | { TComStreamPreviewHandler } 68 | function TComStreamPreviewHandler.GetPreviewHandler: TStreamPreviewHandler; 69 | begin 70 | Result := inherited PreviewHandler as TStreamPreviewHandler; 71 | end; 72 | 73 | function TComStreamPreviewHandler.IInitializeWithStream_Initialize(const pstream: IStream; grfMode: Cardinal): HRESULT; 74 | begin 75 | TLogPreview.Add('TComStreamPreviewHandler.IInitializeWithStream_Initialize Init'); 76 | Initialize_GDI; 77 | FIStream := pstream; 78 | FMode := grfMode; 79 | Result := S_OK; 80 | TLogPreview.Add('TComStreamPreviewHandler.IInitializeWithStream_Initialize Done'); 81 | end; 82 | 83 | procedure TComStreamPreviewHandler.InternalUnload; 84 | begin 85 | TLogPreview.Add('TComStreamPreviewHandler.InternalUnload'); 86 | FIStream := nil; 87 | end; 88 | 89 | procedure TComStreamPreviewHandler.InternalDoPreview; 90 | var 91 | AStream: TIStreamAdapter; 92 | begin 93 | TLogPreview.Add('TComStreamPreviewHandler.InternalDoPreview'); 94 | AStream := TIStreamAdapter.Create(FIStream); 95 | try 96 | CheckContainer; 97 | Container.LoadFromStream(AStream); 98 | Container.Show; 99 | finally 100 | AStream.Free; 101 | end; 102 | end; 103 | 104 | { TStreamPreviewHandler } 105 | class function TStreamPreviewHandler.GetComClass: TComClass; 106 | begin 107 | Result := TComStreamPreviewHandler; 108 | end; 109 | 110 | end. 111 | 112 | -------------------------------------------------------------------------------- /Unregister_Register.cmd: -------------------------------------------------------------------------------- 1 | echo Unregister dll 2 | call D:\ETHEA\FExplorer\Bin32\UnRegister32bit.bat 3 | call D:\ETHEA\FExplorer\Bin64\UnRegister64bit.bat 4 | 5 | echo Register dll 6 | call D:\ETHEA\FExplorer\Bin32\Register32bit.bat 7 | call D:\ETHEA\FExplorer\Bin64\Register64bit.bat 8 | 9 | pause --------------------------------------------------------------------------------