├── Ext
├── VCLStyleUtils
│ ├── Common
│ │ ├── AwesomeFont.RC
│ │ ├── AwesomeFont_zip.RC
│ │ ├── CompileResources.bat
│ │ ├── AwesomeFont.RES
│ │ ├── CompileResources_zip.bat
│ │ ├── AwesomeFont_zip.RES
│ │ ├── Vcl.Styles.Utils.SysControls.pas
│ │ ├── Vcl.Styles.Register.pas
│ │ └── VCL.Styles.Utils.inc
│ └── DDetours
│ │ └── Source
│ │ ├── DDetoursDefs.inc
│ │ ├── LegacyTypes.pas
│ │ └── TlHelp32.inc
├── SynEdit
│ ├── Source
│ │ ├── Page.bmp
│ │ ├── SynEdit.res
│ │ ├── SynEditReg.dcr
│ │ ├── SynEditReg.res
│ │ ├── SynEditTypes.pas
│ │ ├── SynExportTeX.pas
│ │ ├── SynURIOpener.pas
│ │ ├── SynEditExport.pas
│ │ ├── SynEditPlugins.pas
│ │ ├── SynExportHTML.pas
│ │ ├── SynSpellCheck.dcr
│ │ ├── FSynHighlightProp.pas
│ │ ├── FTestPrintPreview.pas
│ │ ├── SynEditKbdHandler.pas
│ │ ├── SynEditPrintTypes.pas
│ │ ├── SynEditTextBuffer.pas
│ │ ├── SynEditWordWrap.pas
│ │ ├── SynHighlighterAWK.pas
│ │ ├── SynHighlighterAsm.pas
│ │ ├── SynHighlighterBat.pas
│ │ ├── SynHighlighterCAC.pas
│ │ ├── SynHighlighterCPM.pas
│ │ ├── SynHighlighterCS.pas
│ │ ├── SynHighlighterCpp.pas
│ │ ├── SynHighlighterCss.pas
│ │ ├── SynHighlighterDOT.pas
│ │ ├── SynHighlighterDfm.pas
│ │ ├── SynHighlighterDml.pas
│ │ ├── SynHighlighterGWS.pas
│ │ ├── SynHighlighterIDL.pas
│ │ ├── SynHighlighterIni.pas
│ │ ├── SynHighlighterKix.pas
│ │ ├── SynHighlighterM3.pas
│ │ ├── SynHighlighterMsg.pas
│ │ ├── SynHighlighterPas.pas
│ │ ├── SynHighlighterRC.pas
│ │ ├── SynHighlighterSDD.pas
│ │ ├── SynHighlighterST.pas
│ │ ├── SynHighlighterSml.pas
│ │ ├── SynHighlighterTeX.pas
│ │ ├── SynHighlighterURI.pas
│ │ ├── SynHighlighterVB.pas
│ │ ├── SynHighlighterXML.pas
│ │ ├── SynMacroRecorder.pas
│ │ ├── SynEditMiscClasses.pas
│ │ ├── SynEditPrintPreview.pas
│ │ ├── SynEditPropertyReg.pas
│ │ ├── SynEditRegexSearch.pas
│ │ ├── SynHighlighterBaan.pas
│ │ ├── SynHighlighterCache.pas
│ │ ├── SynHighlighterCobol.pas
│ │ ├── SynHighlighterHC11.pas
│ │ ├── SynHighlighterHP48.pas
│ │ ├── SynHighlighterHtml.pas
│ │ ├── SynHighlighterInno.pas
│ │ ├── SynHighlighterJava.pas
│ │ ├── SynHighlighterLDraw.pas
│ │ ├── SynHighlighterMulti.pas
│ │ ├── SynHighlighterRuby.pas
│ │ ├── SynHighlighterTclTk.pas
│ │ ├── SynAutoCorrectEditor.pas
│ │ ├── SynEditPythonBehaviour.pas
│ │ ├── SynEditWildcardSearch.pas
│ │ ├── SynHighlighterADSP21xx.pas
│ │ ├── SynHighlighterEiffel.pas
│ │ ├── SynHighlighterFortran.pas
│ │ ├── SynHighlighterFoxpro.pas
│ │ ├── SynHighlighterGalaxy.pas
│ │ ├── SynHighlighterGeneral.pas
│ │ ├── SynHighlighterHaskell.pas
│ │ ├── SynHighlighterJScript.pas
│ │ ├── SynHighlighterModelica.pas
│ │ ├── SynHighlighterProgress.pas
│ │ ├── SynHighlighterPython.pas
│ │ ├── SynHighlighterUnreal.pas
│ │ ├── SynHighlighterVBScript.pas
│ │ ├── SynHighlighterVrml97.pas
│ │ ├── SynEditPrintHeaderFooter.pas
│ │ ├── SynEditActionsResource.pas
│ │ ├── dlgReplaceText.dfm
│ │ ├── dlgConfirmReplace.dfm
│ │ ├── SynEdit.inc
│ │ ├── SynEditActionsResource.dfm
│ │ ├── SynEditKeyCmdEditor.dfm
│ │ ├── dlgSearchText.dfm
│ │ ├── SynEditKeyCmdsEditor.dfm
│ │ ├── dlgConfirmReplace.pas
│ │ ├── SynEditHighlighterOptions.pas
│ │ └── dlgReplaceText.pas
│ └── Packages
│ │ ├── SynEdit_D12.dpk
│ │ ├── SynEdit_D13.dpk
│ │ ├── Delphi12.groupproj
│ │ └── Delphi13.groupproj
├── StyledComponents
│ ├── source
│ │ ├── IconsPNG.RES
│ │ ├── Animations.RES
│ │ ├── BuildResFileOfAnimations.cmd
│ │ ├── CommandLinkBMP.RES
│ │ ├── CommandLinkPNG.RES
│ │ ├── StyledButtonsBMP.RES
│ │ ├── StyledButtonsPNG.RES
│ │ ├── StyledNavButtonsBMP.RES
│ │ ├── StyledNavButtonsPNG.RES
│ │ ├── Vcl.StyledCmpMessages.pas
│ │ ├── Vcl.StyledCmpStrUtils.pas
│ │ ├── Animations.rc
│ │ ├── Skia.Vcl.StyledTaskDialogAnimatedUnit.dfm
│ │ ├── Vcl.StyledTaskDialogStdUnit.dfm
│ │ ├── StyledComponents.inc
│ │ ├── Vcl.StyledAnimatedTaskDialog.pas
│ │ ├── Vcl.StyledComponentsHooks.pas
│ │ └── Vcl.StyledMessagesHooks.pas
│ └── packages
│ │ ├── StyledButton.dcr
│ │ ├── StyledToolBar.dcr
│ │ ├── StyledTaskDialog.dcr
│ │ ├── StyledButtonGroup.dcr
│ │ ├── StyledDbNavigator.dcr
│ │ ├── StyledAnimatedButton.dcr
│ │ ├── StyledAnimatedToolBar.dcr
│ │ ├── StyledCategoryButtons.dcr
│ │ ├── StyledComponentsSplash.res
│ │ ├── StyledAnimatedTaskDialog.dcr
│ │ ├── D12
│ │ ├── 1.Vcl.StyledComponents.groupproj
│ │ ├── 2.Vcl.StyledAnimatedComponents.groupproj
│ │ ├── dclStyledComponents.dpk
│ │ ├── dclStyledAnimatedComponents.dpk
│ │ ├── StyledAnimatedComponents.dpk
│ │ └── StyledComponents.dpk
│ │ └── D13
│ │ ├── 1.Vcl.StyledComponents.groupproj
│ │ ├── 2.Vcl.StyledAnimatedComponents.groupproj
│ │ ├── dclStyledComponents.dpk
│ │ ├── dclStyledAnimatedComponents.dpk
│ │ ├── StyledAnimatedComponents.dpk
│ │ └── StyledComponents.dpk
└── SVGIconImageList
│ ├── Source
│ ├── SVGIconImageList.inc
│ └── FMX.SVGIconsUtils.pas
│ └── Image32
│ └── source
│ ├── Img32.Panels.dcr
│ ├── Clipper.inc
│ └── Img32.SVG.HtmlValues.inc
├── Icons
├── logo.ico
├── setup.ico
├── logo_512.png
├── setup_512.png
├── svgfolder_multires.ico
├── folder-yellow-svg.svg
└── svg-logo-v.svg
├── Images
├── About.png
├── Setup.png
├── ExportToPNG.png
├── SearchText.png
├── Context-Menu.png
├── SettingsFont.png
├── SettingsTheme.png
├── SettingsPreview.png
├── XYplorer_Preview.png
├── PreviewDelphiLogos.png
├── SVGPreviewHandler.png
├── SVGTextEditorDark.png
├── SVGTextEditorLight.png
├── SettingsTextColors.png
├── XYplorer_Settings.png
├── PreviewThumbnailsDark.png
├── PreviewThumbnailsLight.png
└── SVGIconImageListBanner.png
├── Source
├── uAbout.pas
├── FSplash.dfm
├── EtheaMultires.ico
├── SVGTextEditor.dpr
├── SVGTextEditor.res
├── SVGShellExtensions.res
├── SVGTextEditor_Icon.ico
├── SVGShellExtensions32.res
├── uPreviewContainer.dfm
├── dlgReplaceText.dfm
├── dlgConfirmReplace.dfm
├── uCommonPreviewHandler.pas
├── uStackTrace.pas
├── SVGShellExtensionsGroup.groupproj
├── FSplash.pas
├── dlgSearchText.dfm
├── uStreamAdapter.pas
├── uFilePreviewHandler.pas
├── uLogExcept.pas
├── uSVGPreviewHandler.pas
├── Main.pas
├── SVGShellExtensions.dpr
├── SVGShellExtensions32.dpr
├── uStreamPreviewHandler.pas
└── dlgConfirmReplace.pas
├── Bin64
├── Register64bit.bat
└── UnRegister64bit.bat
├── Setup
├── WizEtheaImage.bmp
├── SupportingDelphi.jpg
├── SVGShellExtensions.iss
├── WizEtheaSmallImage.bmp
├── WizEtheaSmallImage110x106.bmp
├── WizEtheaSmallImage119x123.bmp
├── WizEtheaSmallImage138x140.bmp
├── WizEtheaSmallImage64x68.bmp
├── WizEtheaSmallImage83x80.bmp
├── WizEtheaSmallImage92x97.bmp
├── Settings.ini
├── License_ENG.rtf
└── Licenza_ITA.rtf
├── Bin32
├── Register32bit.bat
└── UnRegister32bit.bat
├── Debug
└── Preview Handlers
│ ├── PreviewHandler Host
│ ├── PreviewHost.res
│ ├── PreviewHost.dpr
│ ├── uMain.dfm
│ └── uMain.pas
│ └── PreviewHandler Host_Without_TShellListView
│ ├── PreviewHost.res
│ ├── PreviewHost.dpr
│ ├── uMain.pas
│ └── uMain.dfm
├── Unregister_Register.cmd
├── Unregister_Register_Program_Files.cmd
├── Build.bat
└── .gitignore
/Ext/VCLStyleUtils/Common/AwesomeFont.RC:
--------------------------------------------------------------------------------
1 | fontawesome RCDATA fontawesome.ttf
--------------------------------------------------------------------------------
/Ext/VCLStyleUtils/Common/AwesomeFont_zip.RC:
--------------------------------------------------------------------------------
1 | fontawesome_zip RCDATA fontawesome.zip
--------------------------------------------------------------------------------
/Icons/logo.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Icons/logo.ico
--------------------------------------------------------------------------------
/Icons/setup.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Icons/setup.ico
--------------------------------------------------------------------------------
/Images/About.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/About.png
--------------------------------------------------------------------------------
/Images/Setup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/Setup.png
--------------------------------------------------------------------------------
/Source/uAbout.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Source/uAbout.pas
--------------------------------------------------------------------------------
/Icons/logo_512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Icons/logo_512.png
--------------------------------------------------------------------------------
/Icons/setup_512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Icons/setup_512.png
--------------------------------------------------------------------------------
/Source/FSplash.dfm:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Source/FSplash.dfm
--------------------------------------------------------------------------------
/Images/ExportToPNG.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/ExportToPNG.png
--------------------------------------------------------------------------------
/Images/SearchText.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/SearchText.png
--------------------------------------------------------------------------------
/Bin64/Register64bit.bat:
--------------------------------------------------------------------------------
1 | %systemroot%\System32\regsvr32 "D:\ETHEA\SVGShellExtensions\Bin64\SVGShellExtensions.dll"
--------------------------------------------------------------------------------
/Images/Context-Menu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/Context-Menu.png
--------------------------------------------------------------------------------
/Images/SettingsFont.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/SettingsFont.png
--------------------------------------------------------------------------------
/Images/SettingsTheme.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/SettingsTheme.png
--------------------------------------------------------------------------------
/Setup/WizEtheaImage.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Setup/WizEtheaImage.bmp
--------------------------------------------------------------------------------
/Source/EtheaMultires.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Source/EtheaMultires.ico
--------------------------------------------------------------------------------
/Source/SVGTextEditor.dpr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Source/SVGTextEditor.dpr
--------------------------------------------------------------------------------
/Source/SVGTextEditor.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Source/SVGTextEditor.res
--------------------------------------------------------------------------------
/Bin32/Register32bit.bat:
--------------------------------------------------------------------------------
1 | %systemroot%\SysWoW64\regsvr32 "D:\ETHEA\SVGShellExtensions\Bin32\SVGShellExtensions32.dll"
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/Page.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/Page.bmp
--------------------------------------------------------------------------------
/Images/SettingsPreview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/SettingsPreview.png
--------------------------------------------------------------------------------
/Images/XYplorer_Preview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/XYplorer_Preview.png
--------------------------------------------------------------------------------
/Setup/SupportingDelphi.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Setup/SupportingDelphi.jpg
--------------------------------------------------------------------------------
/Bin32/UnRegister32bit.bat:
--------------------------------------------------------------------------------
1 | %systemroot%\SysWoW64\regsvr32 /u "D:\ETHEA\SVGShellExtensions\Bin32\SVGShellExtensions32.dll"
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEdit.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEdit.res
--------------------------------------------------------------------------------
/Icons/svgfolder_multires.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Icons/svgfolder_multires.ico
--------------------------------------------------------------------------------
/Images/PreviewDelphiLogos.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/PreviewDelphiLogos.png
--------------------------------------------------------------------------------
/Images/SVGPreviewHandler.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/SVGPreviewHandler.png
--------------------------------------------------------------------------------
/Images/SVGTextEditorDark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/SVGTextEditorDark.png
--------------------------------------------------------------------------------
/Images/SVGTextEditorLight.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/SVGTextEditorLight.png
--------------------------------------------------------------------------------
/Images/SettingsTextColors.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/SettingsTextColors.png
--------------------------------------------------------------------------------
/Images/XYplorer_Settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/XYplorer_Settings.png
--------------------------------------------------------------------------------
/Setup/SVGShellExtensions.iss:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Setup/SVGShellExtensions.iss
--------------------------------------------------------------------------------
/Setup/WizEtheaSmallImage.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Setup/WizEtheaSmallImage.bmp
--------------------------------------------------------------------------------
/Source/SVGShellExtensions.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Source/SVGShellExtensions.res
--------------------------------------------------------------------------------
/Source/SVGTextEditor_Icon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Source/SVGTextEditor_Icon.ico
--------------------------------------------------------------------------------
/Images/PreviewThumbnailsDark.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/PreviewThumbnailsDark.png
--------------------------------------------------------------------------------
/Source/SVGShellExtensions32.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Source/SVGShellExtensions32.res
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditReg.dcr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditReg.dcr
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditReg.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditReg.res
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditTypes.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditTypes.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynExportTeX.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynExportTeX.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynURIOpener.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynURIOpener.pas
--------------------------------------------------------------------------------
/Images/PreviewThumbnailsLight.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/PreviewThumbnailsLight.png
--------------------------------------------------------------------------------
/Images/SVGIconImageListBanner.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Images/SVGIconImageListBanner.png
--------------------------------------------------------------------------------
/Setup/WizEtheaSmallImage110x106.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Setup/WizEtheaSmallImage110x106.bmp
--------------------------------------------------------------------------------
/Setup/WizEtheaSmallImage119x123.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Setup/WizEtheaSmallImage119x123.bmp
--------------------------------------------------------------------------------
/Setup/WizEtheaSmallImage138x140.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Setup/WizEtheaSmallImage138x140.bmp
--------------------------------------------------------------------------------
/Setup/WizEtheaSmallImage64x68.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Setup/WizEtheaSmallImage64x68.bmp
--------------------------------------------------------------------------------
/Setup/WizEtheaSmallImage83x80.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Setup/WizEtheaSmallImage83x80.bmp
--------------------------------------------------------------------------------
/Setup/WizEtheaSmallImage92x97.bmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Setup/WizEtheaSmallImage92x97.bmp
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditExport.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditExport.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditPlugins.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditPlugins.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynExportHTML.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynExportHTML.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynSpellCheck.dcr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynSpellCheck.dcr
--------------------------------------------------------------------------------
/Ext/VCLStyleUtils/Common/CompileResources.bat:
--------------------------------------------------------------------------------
1 | "C:\Program Files (x86)\Embarcadero\Studio\18.0\bin\brcc32.exe" AwesomeFont.rc
2 | Pause
--------------------------------------------------------------------------------
/Ext/StyledComponents/source/IconsPNG.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/source/IconsPNG.RES
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/FSynHighlightProp.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/FSynHighlightProp.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/FTestPrintPreview.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/FTestPrintPreview.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditKbdHandler.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditKbdHandler.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditPrintTypes.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditPrintTypes.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditTextBuffer.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditTextBuffer.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditWordWrap.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditWordWrap.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterAWK.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterAWK.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterAsm.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterAsm.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterBat.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterBat.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterCAC.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterCAC.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterCPM.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterCPM.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterCS.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterCS.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterCpp.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterCpp.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterCss.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterCss.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterDOT.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterDOT.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterDfm.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterDfm.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterDml.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterDml.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterGWS.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterGWS.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterIDL.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterIDL.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterIni.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterIni.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterKix.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterKix.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterM3.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterM3.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterMsg.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterMsg.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterPas.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterPas.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterRC.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterRC.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterSDD.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterSDD.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterST.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterST.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterSml.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterSml.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterTeX.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterTeX.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterURI.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterURI.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterVB.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterVB.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterXML.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterXML.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynMacroRecorder.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynMacroRecorder.pas
--------------------------------------------------------------------------------
/Ext/VCLStyleUtils/Common/AwesomeFont.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/VCLStyleUtils/Common/AwesomeFont.RES
--------------------------------------------------------------------------------
/Ext/VCLStyleUtils/Common/CompileResources_zip.bat:
--------------------------------------------------------------------------------
1 | "C:\Program Files (x86)\Embarcadero\Studio\18.0\bin\brcc32.exe" AwesomeFont_zip.rc
2 | Pause
--------------------------------------------------------------------------------
/Ext/StyledComponents/source/Animations.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/source/Animations.RES
--------------------------------------------------------------------------------
/Ext/StyledComponents/source/BuildResFileOfAnimations.cmd:
--------------------------------------------------------------------------------
1 | @echo Buid Animations.res file from Animations.rc
2 | BRCC32.EXE Animations.rc
3 | pause
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditMiscClasses.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditMiscClasses.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditPrintPreview.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditPrintPreview.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditPropertyReg.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditPropertyReg.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditRegexSearch.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditRegexSearch.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterBaan.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterBaan.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterCache.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterCache.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterCobol.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterCobol.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterHC11.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterHC11.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterHP48.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterHP48.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterHtml.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterHtml.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterInno.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterInno.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterJava.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterJava.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterLDraw.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterLDraw.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterMulti.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterMulti.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterRuby.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterRuby.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterTclTk.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterTclTk.pas
--------------------------------------------------------------------------------
/Setup/Settings.ini:
--------------------------------------------------------------------------------
1 | [Global]
2 | FontSize=12
3 | FontName=Consolas
4 | StyleName=Windows10
5 | ShowEditor=0
6 | SplitterPos=50
7 | PreferD2D=0
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynAutoCorrectEditor.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynAutoCorrectEditor.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditPythonBehaviour.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditPythonBehaviour.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditWildcardSearch.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditWildcardSearch.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterADSP21xx.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterADSP21xx.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterEiffel.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterEiffel.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterFortran.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterFortran.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterFoxpro.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterFoxpro.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterGalaxy.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterGalaxy.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterGeneral.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterGeneral.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterHaskell.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterHaskell.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterJScript.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterJScript.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterModelica.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterModelica.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterProgress.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterProgress.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterPython.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterPython.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterUnreal.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterUnreal.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterVBScript.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterVBScript.pas
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynHighlighterVrml97.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynHighlighterVrml97.pas
--------------------------------------------------------------------------------
/Ext/VCLStyleUtils/Common/AwesomeFont_zip.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/VCLStyleUtils/Common/AwesomeFont_zip.RES
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/StyledButton.dcr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/packages/StyledButton.dcr
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/StyledToolBar.dcr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/packages/StyledToolBar.dcr
--------------------------------------------------------------------------------
/Ext/StyledComponents/source/CommandLinkBMP.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/source/CommandLinkBMP.RES
--------------------------------------------------------------------------------
/Ext/StyledComponents/source/CommandLinkPNG.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/source/CommandLinkPNG.RES
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditPrintHeaderFooter.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SynEdit/Source/SynEditPrintHeaderFooter.pas
--------------------------------------------------------------------------------
/Ext/SVGIconImageList/Source/SVGIconImageList.inc:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SVGIconImageList/Source/SVGIconImageList.inc
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/StyledTaskDialog.dcr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/packages/StyledTaskDialog.dcr
--------------------------------------------------------------------------------
/Ext/StyledComponents/source/StyledButtonsBMP.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/source/StyledButtonsBMP.RES
--------------------------------------------------------------------------------
/Ext/StyledComponents/source/StyledButtonsPNG.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/source/StyledButtonsPNG.RES
--------------------------------------------------------------------------------
/Ext/SVGIconImageList/Image32/source/Img32.Panels.dcr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/SVGIconImageList/Image32/source/Img32.Panels.dcr
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/StyledButtonGroup.dcr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/packages/StyledButtonGroup.dcr
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/StyledDbNavigator.dcr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/packages/StyledDbNavigator.dcr
--------------------------------------------------------------------------------
/Ext/StyledComponents/source/StyledNavButtonsBMP.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/source/StyledNavButtonsBMP.RES
--------------------------------------------------------------------------------
/Ext/StyledComponents/source/StyledNavButtonsPNG.RES:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/source/StyledNavButtonsPNG.RES
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/StyledAnimatedButton.dcr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/packages/StyledAnimatedButton.dcr
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/StyledAnimatedToolBar.dcr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/packages/StyledAnimatedToolBar.dcr
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/StyledCategoryButtons.dcr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/packages/StyledCategoryButtons.dcr
--------------------------------------------------------------------------------
/Ext/StyledComponents/source/Vcl.StyledCmpMessages.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/source/Vcl.StyledCmpMessages.pas
--------------------------------------------------------------------------------
/Ext/StyledComponents/source/Vcl.StyledCmpStrUtils.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/source/Vcl.StyledCmpStrUtils.pas
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/StyledComponentsSplash.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/packages/StyledComponentsSplash.res
--------------------------------------------------------------------------------
/Ext/VCLStyleUtils/Common/Vcl.Styles.Utils.SysControls.pas:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/VCLStyleUtils/Common/Vcl.Styles.Utils.SysControls.pas
--------------------------------------------------------------------------------
/Debug/Preview Handlers/PreviewHandler Host/PreviewHost.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Debug/Preview Handlers/PreviewHandler Host/PreviewHost.res
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/StyledAnimatedTaskDialog.dcr:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Ext/StyledComponents/packages/StyledAnimatedTaskDialog.dcr
--------------------------------------------------------------------------------
/Bin64/UnRegister64bit.bat:
--------------------------------------------------------------------------------
1 | %systemroot%\System32\regsvr32 /u "D:\ETHEA\SVGShellExtensions\Bin64\SVGShellExtensions.dll"
2 | rem %systemroot%\System32\regsvr32 /u "C:\Program Files\Ethea\SVGShellExtensions\SVGShellExtensions.dll"
--------------------------------------------------------------------------------
/Debug/Preview Handlers/PreviewHandler Host_Without_TShellListView/PreviewHost.res:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/EtheaDev/SVGShellExtensions/HEAD/Debug/Preview Handlers/PreviewHandler Host_Without_TShellListView/PreviewHost.res
--------------------------------------------------------------------------------
/Unregister_Register.cmd:
--------------------------------------------------------------------------------
1 | echo Unregister dll
2 | call D:\ETHEA\SVGShellExtensions\Bin32\UnRegister32bit.bat
3 | call D:\ETHEA\SVGShellExtensions\Bin64\UnRegister64bit.bat
4 |
5 | echo Register dll
6 | call D:\ETHEA\SVGShellExtensions\Bin32\Register32bit.bat
7 | call D:\ETHEA\SVGShellExtensions\Bin64\Register64bit.bat
8 |
9 | pause
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/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_Without_TShellListView/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 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/Ext/StyledComponents/source/Animations.rc:
--------------------------------------------------------------------------------
1 | STYLEDTASKLOTTIE_INFORMATION RCDATA "..\Animations\information.json"
2 | STYLEDTASKLOTTIE_CUSTOM RCDATA "..\Animations\custom.json"
3 | STYLEDTASKLOTTIE_ERROR RCDATA "..\Animations\error.json"
4 | STYLEDTASKLOTTIE_WARNING RCDATA "..\Animations\warning.json"
5 | STYLEDTASKLOTTIE_SHIELD RCDATA "..\Animations\shield.json"
6 | STYLEDTASKLOTTIE_NOTIFY RCDATA "..\Animations\notify.json"
7 | STYLEDTASKLOTTIE_QUESTION RCDATA "..\Animations\question.json"
--------------------------------------------------------------------------------
/Unregister_Register_Program_Files.cmd:
--------------------------------------------------------------------------------
1 | echo Unregister dll
2 | %systemroot%\SysWoW64\regsvr32 /u "%ProgramFiles%\Ethea\SVGShellExtensions\SVGShellExtensions32.dll"
3 | %systemroot%\System32\regsvr32 /u "%ProgramFiles%\Ethea\SVGShellExtensions\SVGShellExtensions.dll"
4 |
5 | echo Register dll
6 | %systemroot%\SysWoW64\regsvr32 "%ProgramFiles%\Ethea\SVGShellExtensions\SVGShellExtensions32.dll"
7 | %systemroot%\System32\regsvr32 "%ProgramFiles%\Ethea\SVGShellExtensions\SVGShellExtensions.dll"
8 |
9 | pause
--------------------------------------------------------------------------------
/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/Vcl.StyledTaskDialogStdUnit.dfm:
--------------------------------------------------------------------------------
1 | inherited StyledTaskDialogStd: TStyledTaskDialogStd
2 | Caption = 'StyledTaskDialogStd'
3 | TextHeight = 15
4 | inherited FooterPanel: TPanel
5 | inherited FooterIconPanel: TPanel
6 | object FooterImage: TImage
7 | Left = 0
8 | Top = 0
9 | Width = 25
10 | Height = 25
11 | Align = alTop
12 | Stretch = True
13 | Transparent = True
14 | end
15 | end
16 | end
17 | inherited CenterPanel: TPanel
18 | inherited ImagePanel: TPanel
19 | inherited IconContainer: TPanel
20 | DoubleBuffered = True
21 | ParentDoubleBuffered = False
22 | object Image: TImage
23 | Left = 0
24 | Top = 0
25 | Width = 64
26 | Height = 64
27 | Align = alClient
28 | Stretch = True
29 | Transparent = True
30 | end
31 | end
32 | end
33 | end
34 | end
35 |
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditActionsResource.pas:
--------------------------------------------------------------------------------
1 | unit SynEditActionsResource;
2 |
3 | interface
4 |
5 | uses
6 | System.SysUtils, System.Classes, System.Actions, Vcl.ActnList, Vcl.StdActns,
7 | SynEditMiscClasses, SynSpellCheck;
8 |
9 | type
10 | TSynEditActions = class(TDataModule)
11 | ActionList: TActionList;
12 | SynEditRedo: TSynEditRedo;
13 | SynSpellCheckFile: TSynSpellCheckFile;
14 | SynSpellCheckLine: TSynSpellCheckLine;
15 | SynSpellCheckSelection: TSynSpellCheckSelection;
16 | SynSpellCheckWord: TSynSpellCheckWord;
17 | SynSpellClearErrors: TSynSpellClearErrors;
18 | SynSpellCheckAsYouType: TSynSpellCheckAsYouType;
19 | SynSpellErrorAdd: TSynSpellErrorAdd;
20 | SynSpellErrorIgnoreOnce: TSynSpellErrorIgnoreOnce;
21 | SynSpellErrorIgnore: TSynSpellErrorIgnore;
22 | SynSpellErrorDelete: TSynSpellErrorDelete;
23 | private
24 | public
25 | end;
26 |
27 | implementation
28 |
29 | {%CLASSGROUP 'Vcl.Controls.TControl'}
30 |
31 | {$R *.dfm}
32 |
33 | end.
34 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/Build.bat:
--------------------------------------------------------------------------------
1 | call "C:\BDS\Studio\37.0\bin\rsvars.bat"
2 | msbuild.exe "Source\SVGShellExtensions.dproj" /target:Clean;Build /p:Platform=Win64 /p:config=release
3 | msbuild.exe "Source\SVGShellExtensions32.dproj" /target:Clean;Build /p:Platform=Win32 /p:config=release
4 | msbuild.exe "Source\SVGTextEditor.dproj" /target:Clean;Build /p:Platform=Win64 /p:config=release
5 | msbuild.exe "Source\SVGTextEditor.dproj" /target:Clean;Build /p:Platform=Win32 /p:config=release
6 |
7 | call D:\ETHEA\Certificate\SignFileWithSectico.bat D:\ETHEA\SVGShellExtensions\Bin32\SVGTextEditor.exe
8 | call D:\ETHEA\Certificate\SignFileWithSectico.bat D:\ETHEA\SVGShellExtensions\Bin64\SVGTextEditor.exe
9 |
10 | :INNO
11 | "C:\Program Files (x86)\Inno Setup 6\iscc.exe" "D:\ETHEA\SVGShellExtensions\Setup\SVGShellExtensions.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\SVGShellExtensions\Setup\Output\SVGShellExtensionsSetup.exe
19 |
20 | :END
21 | pause
22 |
--------------------------------------------------------------------------------
/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_D13.dpk:
--------------------------------------------------------------------------------
1 | package SynEdit_D13;
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_R13;
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/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/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 |
--------------------------------------------------------------------------------
/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 | TabOrder = 2
23 | ExplicitTop = 70
24 | end
25 | inherited FSearchDirection: TRadioGroup
26 | Top = 70
27 | TabOrder = 3
28 | ExplicitTop = 70
29 | end
30 | inherited btnOK: TButton
31 | Top = 174
32 | TabOrder = 4
33 | ExplicitTop = 174
34 | end
35 | object cbReplaceText: TComboBox [6]
36 | Left = 96
37 | Top = 37
38 | Width = 228
39 | Height = 21
40 | TabOrder = 1
41 | end
42 | inherited btnCancel: TButton
43 | Top = 174
44 | TabOrder = 5
45 | ExplicitTop = 174
46 | end
47 | end
48 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/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 | OldCreateOrder = False
14 | OnCreate = FormCreate
15 | OnDestroy = FormDestroy
16 | PixelsPerInch = 96
17 | TextHeight = 13
18 | object Splitter1: TSplitter
19 | Left = 417
20 | Top = 0
21 | Width = 4
22 | Height = 559
23 | AutoSnap = False
24 | ExplicitLeft = 217
25 | ExplicitHeight = 338
26 | end
27 | object Panel1: TPanel
28 | Left = 421
29 | Top = 0
30 | Width = 539
31 | Height = 559
32 | Align = alClient
33 | TabOrder = 0
34 | end
35 | object Panel3: TPanel
36 | Left = 0
37 | Top = 0
38 | Width = 417
39 | Height = 559
40 | Align = alLeft
41 | TabOrder = 1
42 | object ShellListView1: TShellListView
43 | Left = 1
44 | Top = 1
45 | Width = 415
46 | Height = 557
47 | ObjectTypes = [otFolders, otNonFolders]
48 | Root = 'D:\ETHEA\SVGIconImageList\Demo\svg_examples'
49 | Sorted = True
50 | Align = alClient
51 | ReadOnly = False
52 | HideSelection = False
53 | OnChange = ShellListView1Change
54 | TabOrder = 0
55 | end
56 | end
57 | end
58 |
--------------------------------------------------------------------------------
/Debug/Preview Handlers/PreviewHandler Host_Without_TShellListView/uMain.pas:
--------------------------------------------------------------------------------
1 | unit uMain;
2 | interface
3 | uses
4 | Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
5 | Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.OleCtnrs,
6 | Vcl.ExtCtrls, Vcl.ComCtrls;
7 | type
8 | TFrmMain = class(TForm)
9 | Panel3: TPanel;
10 | EditFileName: TEdit;
11 | Button1: TButton;
12 | OpenDialog1: TOpenDialog;
13 | RadioGroup: TRadioGroup;
14 | Panel1: TPanel;
15 | procedure FormCreate(Sender: TObject);
16 | procedure Button1Click(Sender: TObject);
17 | procedure RadioGroupClick(Sender: TObject);
18 | private
19 | { Private declarations }
20 | procedure LoadPreview(const FileName: string);
21 | public
22 | { Public declarations }
23 | end;
24 | var
25 | FrmMain: TFrmMain;
26 |
27 | implementation
28 |
29 | uses
30 | Winapi.ActiveX;
31 | {$R *.dfm}
32 |
33 |
34 | procedure TFrmMain.Button1Click(Sender: TObject);
35 | begin
36 | if OpenDialog1.Execute() then
37 | begin
38 | EditFileName.Text:= OpenDialog1.FileName;
39 | //LoadPreview(EditFileName.Text);
40 | end;
41 | end;
42 | procedure TFrmMain.FormCreate(Sender: TObject);
43 | begin
44 | ReportMemoryLeaksOnShutdown := True;
45 | end;
46 |
47 | procedure TFrmMain.LoadPreview(const FileName: string);
48 | begin
49 | end;
50 | procedure TFrmMain.RadioGroupClick(Sender: TObject);
51 | begin
52 | (*
53 | case RadioGroup.ItemIndex of
54 | 0: Print(32);
55 | 1: Print(64);
56 | 2: Print(128);
57 | 3: Print(256);
58 | end;
59 | *)
60 | end;
61 |
62 | end.
63 |
--------------------------------------------------------------------------------
/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/Delphi13.groupproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | {7DF95D68-835C-4564-84A1-B07ED80FDCC2}
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 |
--------------------------------------------------------------------------------
/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.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/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 |
--------------------------------------------------------------------------------
/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 | 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 |
--------------------------------------------------------------------------------
/Debug/Preview Handlers/PreviewHandler Host_Without_TShellListView/uMain.dfm:
--------------------------------------------------------------------------------
1 | object FrmMain: TFrmMain
2 | Left = 0
3 | Top = 0
4 | Caption = 'Preview Handler Host Demo'
5 | ClientHeight = 480
6 | ClientWidth = 432
7 | Color = clBtnFace
8 | Font.Charset = DEFAULT_CHARSET
9 | Font.Color = clWindowText
10 | Font.Height = -11
11 | Font.Name = 'Tahoma'
12 | Font.Style = []
13 | OldCreateOrder = False
14 | OnCreate = FormCreate
15 | PixelsPerInch = 96
16 | TextHeight = 13
17 | object Panel3: TPanel
18 | Left = 0
19 | Top = 0
20 | Width = 432
21 | Height = 49
22 | Align = alTop
23 | TabOrder = 0
24 | DesignSize = (
25 | 432
26 | 49)
27 | object EditFileName: TEdit
28 | Left = 16
29 | Top = 16
30 | Width = 322
31 | Height = 21
32 | Anchors = [akLeft, akTop, akRight]
33 | Enabled = False
34 | TabOrder = 0
35 | end
36 | object Button1: TButton
37 | Left = 344
38 | Top = 13
39 | Width = 75
40 | Height = 25
41 | Anchors = [akTop, akRight]
42 | Caption = 'Select File'
43 | TabOrder = 1
44 | OnClick = Button1Click
45 | end
46 | end
47 | object RadioGroup: TRadioGroup
48 | Left = 8
49 | Top = 64
50 | Width = 137
51 | Height = 193
52 | Caption = 'Thumbnail size'
53 | Items.Strings = (
54 | 'Small'
55 | 'Medium'
56 | 'Large'
57 | 'Huge')
58 | TabOrder = 1
59 | OnClick = RadioGroupClick
60 | end
61 | object Panel1: TPanel
62 | Left = 224
63 | Top = 64
64 | Width = 185
65 | Height = 177
66 | TabOrder = 2
67 | end
68 | object OpenDialog1: TOpenDialog
69 | Left = 360
70 | Top = 424
71 | end
72 | end
73 |
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/SynEditActionsResource.dfm:
--------------------------------------------------------------------------------
1 | object SynEditActions: TSynEditActions
2 | Height = 270
3 | Width = 474
4 | object ActionList: TActionList
5 | Left = 24
6 | Top = 32
7 | object SynEditRedo: TSynEditRedo
8 | Category = 'Edit'
9 | Caption = '&Redo'
10 | Hint = 'Redo| Redo last action'
11 | ImageName = 'Redo'
12 | ShortCut = 24666
13 | end
14 | object SynSpellCheckFile: TSynSpellCheckFile
15 | Category = 'Spell Checking'
16 | Caption = 'Check File'
17 | end
18 | object SynSpellCheckLine: TSynSpellCheckLine
19 | Category = 'Spell Checking'
20 | Caption = 'Check Line'
21 | end
22 | object SynSpellCheckSelection: TSynSpellCheckSelection
23 | Category = 'Spell Checking'
24 | Caption = 'Check Selection'
25 | end
26 | object SynSpellCheckWord: TSynSpellCheckWord
27 | Category = 'Spell Checking'
28 | Caption = 'Check Word'
29 | end
30 | object SynSpellClearErrors: TSynSpellClearErrors
31 | Category = 'Spell Checking'
32 | Caption = 'Clear Errors'
33 | end
34 | object SynSpellCheckAsYouType: TSynSpellCheckAsYouType
35 | Category = 'Spell Checking'
36 | Caption = 'Check As You Type'
37 | end
38 | object SynSpellErrorAdd: TSynSpellErrorAdd
39 | Category = 'Spell Checking'
40 | Caption = 'Add'
41 | end
42 | object SynSpellErrorIgnoreOnce: TSynSpellErrorIgnoreOnce
43 | Category = 'Spell Checking'
44 | Caption = 'Ignore Once'
45 | end
46 | object SynSpellErrorIgnore: TSynSpellErrorIgnore
47 | Category = 'Spell Checking'
48 | Caption = 'Ignore'
49 | end
50 | object SynSpellErrorDelete: TSynSpellErrorDelete
51 | Category = 'Spell Checking'
52 | Caption = 'Delete'
53 | end
54 | end
55 | end
56 |
--------------------------------------------------------------------------------
/.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 |
--------------------------------------------------------------------------------
/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/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 |
--------------------------------------------------------------------------------
/Setup/License_ENG.rtf:
--------------------------------------------------------------------------------
1 | {\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1040\deflangfe1040{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}}
2 | {\colortbl ;\red0\green0\blue255;}
3 | {\*\generator Riched20 10.0.22621}\viewkind4\uc1
4 | \pard\nowidctlpar\b\f0\fs24 SVG Shell Extensions and SVG Text Editor\par
5 | \fs20 Copyright \'a9 2021-2025 Ethea S.r.l.\par
6 | all rights reserved.\par
7 | \par
8 | \b0 Licensed under the Apache License, Version 2.0 (the "License");\par
9 | you may not use this software except in compliance with the License.\par
10 | You may obtain a copy of the License at\par
11 | \par
12 | {{\field{\*\fldinst{HYPERLINK http://www.apache.org/licenses/LICENSE-2.0 }}{\fldrslt{http://www.apache.org/licenses/LICENSE-2.0\ul0\cf0}}}}\f0\fs20\par
13 | \par
14 | Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\par
15 | \par
16 | See the License for the specific language governing permissions and limitations under the License.\par
17 | \par
18 | \b Credits:\par
19 | \b0 Author: Carlo Barazzetta\par
20 | Source project:\par
21 | {{\field{\*\fldinst{HYPERLINK https://github.com/EtheaDev/SVGShellExtensions }}{\fldrslt{https://github.com/EtheaDev/SVGShellExtensions\ul0\cf0}}}}\f0\fs20\par
22 | \par
23 | Third Party libraries and tools used from Ethea:\par
24 | SVGIconImageList {{\field{\*\fldinst{HYPERLINK https://github.com/EtheaDev/SVGIconImageList/ }}{\fldrslt{https://github.com/EtheaDev/SVGIconImageList/\ul0\cf0}}}}\f0\fs20\par
25 | \par
26 | The Initial Developer of the Original Code is Rodrigo Ruz V.\par
27 | Portions created by Rodrigo Ruz V. are Copyright \'a9 2011-2021 Rodrigo Ruz V.\par
28 | {{\field{\*\fldinst{HYPERLINK https://github.com/RRUZ/delphi-preview-handler }}{\fldrslt{https://github.com/RRUZ/delphi-preview-handler\ul0\cf0}}}}\f0\fs20\par
29 | \par
30 | Third Party libraries and tools used\par
31 | SynEdit forked by PyScripter {{\field{\*\fldinst{HYPERLINK https://github.com/pyscripter/SynEdit/ }}{\fldrslt{https://github.com/pyscripter/SynEdit/\ul0\cf0}}}}\f0\fs20 all rights reserved.\par
32 | \par
33 | Image32 Library - {{\field{\*\fldinst{HYPERLINK https://www.angusj.com/delphi/image32/Docs/_Body.htm }}{\fldrslt{https://www.angusj.com/delphi/image32/Docs/_Body.htm\ul0\cf0}}}}\f0\fs20\par
34 | Copyright \'a92019-2025 Angus Johnson.\par
35 | }
36 |
--------------------------------------------------------------------------------
/Icons/folder-yellow-svg.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/Setup/Licenza_ITA.rtf:
--------------------------------------------------------------------------------
1 | {\rtf1\ansi\ansicpg1252\deff0\nouicompat\deflang1040\deflangfe1040{\fonttbl{\f0\fswiss\fprq2\fcharset0 Arial;}{\f1\fnil\fcharset0 Calibri;}}
2 | {\colortbl ;\red0\green0\blue255;}
3 | {\*\generator Riched20 10.0.22621}\viewkind4\uc1
4 | \pard\nowidctlpar\b\f0\fs24 SVG Shell Extensions and SVG Text Editor\par
5 | \fs20 Copyright \'a9 2021-2025 Ethea S.r.l.\par
6 | Tutti i diritti sono riservati.\par
7 | \par
8 | \b0 Rilasciato con licenza Apache, versione 2.0 (the "license");\par
9 | Non \'e8 possibile utilizzare questo software se non in conformit\'e0 con la licenza.\par
10 | \'c8 possibile ottenere una copia della licenza all'indirizzo\par
11 | \par
12 | {{\field{\*\fldinst{HYPERLINK http://www.apache.org/licenses/LICENSE-2.0 }}{\fldrslt{http://www.apache.org/licenses/LICENSE-2.0\ul0\cf0}}}}\f0\fs20\par
13 | \par
14 | A meno che non sia richiesto dalla legge applicabile o concordato per iscritto, il software distribuito ai sensi della Licenza \'e8 distribuito "COS\'cc COM'\'c8", SENZA GARANZIE O CONDIZIONI DI ALCUN TIPO, espresse o implicite.\par
15 | \par
16 | Vedere la licenza per i permessi le autorizzazioni e le limitazioni.\par
17 | \par
18 | \b Crediti:\par
19 | \b0 Autore: Carlo Barazzetta\par
20 | Sorgenti del progetto:\par
21 | {{\field{\*\fldinst{HYPERLINK https://github.com/EtheaDev/SVGShellExtensions }}{\fldrslt{https://github.com/EtheaDev/SVGShellExtensions\ul0\cf0}}}}\f0\fs20\par
22 | \par
23 | Librerie di terze parti e tools usate da Ethea:\par
24 | SVGIconImageList {{\field{\*\fldinst{HYPERLINK https://github.com/EtheaDev/SVGIconImageList/ }}{\fldrslt{https://github.com/EtheaDev/SVGIconImageList/\ul0\cf0}}}}\f0\fs20\par
25 | \par
26 | Lo sviluppatore originale del codice originale \'e8 Rodrigo Ruz V.\par
27 | Porzioni di codice create da Rodrigo Ruz V. sono Copyright \'a9 2011-2021 Rodrigo Ruz V.\par
28 | {{\field{\*\fldinst{HYPERLINK https://github.com/RRUZ/delphi-preview-handler }}{\fldrslt{https://github.com/RRUZ/delphi-preview-handler\ul0\cf0}}}}\f0\fs20\par
29 | \par
30 | Librerie di terze parti utilizzate:\par
31 | SynEdit forked by PyScripter {{\field{\*\fldinst{HYPERLINK https://github.com/pyscripter/SynEdit/ }}{\fldrslt{https://github.com/pyscripter/SynEdit/\ul0\cf0}}}}\f0\fs20 all rights reserved.\par
32 | \par
33 | Image32 Library - {{\field{\*\fldinst{HYPERLINK https://www.angusj.com/delphi/image32/Docs/_Body.htm }}{\fldrslt{https://www.angusj.com/delphi/image32/Docs/_Body.htm\ul0\cf0}}}}\f0\fs20\par
34 | Copyright \'a92019-2025 Angus Johnson.\par
35 |
36 | \pard\sa200\sl276\slmult1\f1\fs22\lang16\par
37 | }
38 |
--------------------------------------------------------------------------------
/Source/SVGShellExtensionsGroup.groupproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | {68E0D2A4-9F7D-409B-9373-BA6AC49A07FE}
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 |
--------------------------------------------------------------------------------
/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 | procedure ShellListView1Change(Sender: TObject; Item: TListItem;
17 | Change: TItemChange);
18 | procedure FormCreate(Sender: TObject);
19 | procedure FormDestroy(Sender: TObject);
20 | private
21 | FFileName: string;
22 | { Private declarations }
23 | FPreview: THostPreviewHandler;
24 | procedure LoadPreview(const FileName: string);
25 | public
26 | { Public declarations }
27 | end;
28 |
29 | var
30 | FrmMain: TFrmMain;
31 |
32 | implementation
33 |
34 |
35 | {$R *.dfm}
36 |
37 | type
38 | THostPreviewHandlerClass=class(THostPreviewHandler);
39 |
40 |
41 | procedure TFrmMain.FormCreate(Sender: TObject);
42 | begin
43 | FPreview := nil;
44 | end;
45 |
46 | procedure TFrmMain.FormDestroy(Sender: TObject);
47 | begin
48 | if FPreview<>nil then
49 | FPreview.Free;
50 | end;
51 |
52 | procedure TFrmMain.LoadPreview(const FileName: string);
53 | begin
54 | if FPreview = nil then
55 | FPreview := THostPreviewHandler.Create(Self);
56 |
57 | // if FPreview<>nil then
58 | // FPreview.Free;
59 |
60 | FPreview.Top := 0;
61 | FPreview.Left := 0;
62 | FPreview.Width := Panel1.ClientWidth;
63 | FPreview.Height := Panel1.ClientHeight;
64 | FPreview.Parent := Panel1;
65 | FPreview.Align := alClient;
66 | //FPreview.FileName:='C:\Users\Dexter\Desktop\RAD Studio Projects\XE2\delphi-preview-handler\main.pas';
67 | //FPreview.FileName:='C:\Users\Dexter\Desktop\RAD Studio Projects\2010\SMBIOS Delphi\Docs\DSP0119.pdf';
68 | //FPreview.FileName:='C:\Users\Dexter\Desktop\seleccion\RePLE.msg';
69 | FPreview.FileName:=FileName;
70 | THostPreviewHandlerClass(FPreview).Paint;
71 | end;
72 |
73 | procedure TFrmMain.ShellListView1Change(Sender: TObject; Item: TListItem;
74 | Change: TItemChange);
75 | var
76 | LFileName: string;
77 | begin
78 | if (ShellListView1.SelectedFolder<>nil) then
79 | begin
80 | LFileName := ShellListView1.SelectedFolder.PathName;
81 | if (LFileName <> FFileName) and FileExists(LFileName) then
82 | begin
83 | LoadPreview(LFileName);
84 | FFileName := LFileName;
85 | end;
86 | end;
87 | end;
88 |
89 | end.
90 |
--------------------------------------------------------------------------------
/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 | // Delphi 13 Florence
105 | {$IFDEF VER370}
106 | {$DEFINE DXE6+}
107 | {$DEFINE DXE7+}
108 | {$DEFINE DXE8+}
109 | {$DEFINE D10_0+}
110 | {$DEFINE D10_1+}
111 | {$DEFINE D10_2+}
112 | {$DEFINE D10_3+}
113 | {$DEFINE D10_4+}
114 | {$DEFINE D11+}
115 | {$DEFINE D12+}
116 | {$DEFINE D13+}
117 | {$ENDIF}
118 |
119 | {$IFDEF DXE6+}
120 | {$Define GDIPlusSupport}
121 | {.$Define DrawTextWithGDIPlus}
122 | {$Define DrawRectWithGDIPlus}
123 | {$ENDIF}
124 |
125 | {$IFDEF D10_3+}
126 | {$Define HiDPISupport}
127 | {$ENDIF}
128 |
129 |
--------------------------------------------------------------------------------
/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/packages/D12/1.Vcl.StyledComponents.groupproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | {EDD8D142-65E5-48C2-83D1-BD82B331C67A}
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 |
50 | {F870FD7C-4984-4784-8B29-4CDB55E64524}
51 | Release
52 | Win32;Win64
53 | True
54 |
55 |
56 | {03F938E4-4CBD-4FD4-86A2-084115D91AA9}
57 | Release
58 | Win32;Win64
59 | True
60 |
61 |
62 |
63 |
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/D13/1.Vcl.StyledComponents.groupproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | {4571A85D-B646-4C87-8A12-510D904CB16B}
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 |
50 | {6C0F7A40-62C8-47B0-92C9-9AF178585686}
51 | Release
52 | Win32;Win64
53 | True
54 |
55 |
56 | {FBDCB03E-CBFB-4ED4-BFCE-C145F3840403}
57 | Release
58 | Win32;Win64
59 | True
60 |
61 |
62 |
63 |
--------------------------------------------------------------------------------
/Source/FSplash.pas:
--------------------------------------------------------------------------------
1 | {******************************************************************************}
2 | { }
3 | { SVG Shell Extensions: Shell extensions for SVG files }
4 | { (Preview Panel, Thumbnail Icon, SVG Editor) }
5 | { }
6 | { Copyright (c) 2021-2025 (Ethea S.r.l.) }
7 | { Author: Carlo Barazzetta }
8 | { }
9 | { https://github.com/EtheaDev/SVGShellExtensions }
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 FSplash;
27 |
28 | interface
29 |
30 | uses
31 | SysUtils, Windows, Messages, Classes, Graphics, Controls,
32 | Forms, Dialogs, StdCtrls, ExtCtrls, jpeg, SVGIconImage, Vcl.Imaging.pngimage;
33 |
34 | type
35 | TSplashForm = class(TForm)
36 | Image1: TImage;
37 | SVGIconImage: TSVGIconImage;
38 | lbVersion: TLabel;
39 | lbLoad: TLabel;
40 | procedure FormShow(Sender: TObject);
41 | end;
42 |
43 | var
44 | SplashForm: TSplashForm;
45 |
46 | implementation
47 |
48 | {$R *.dfm}
49 |
50 | uses
51 | uAbout;
52 |
53 | procedure TSplashForm.FormShow(Sender: TObject);
54 | begin
55 | lbVersion.Caption := GetCurrentVersion(Application.ExeName);
56 | end;
57 |
58 |
59 | end.
60 |
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/D12/2.Vcl.StyledAnimatedComponents.groupproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | {C2368AEE-8E75-4300-B331-E1E8DBE3BC14}
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 |
50 | {18935916-9466-4807-98CC-6A91C06F1F85}
51 | Release
52 | Win32;Win64
53 | True
54 |
55 |
56 | {EBF448F0-3AF1-4B95-B1AD-5874F1BABAEC}
57 | Release
58 | Win32;Win64
59 | True
60 |
61 |
62 |
63 |
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/D13/2.Vcl.StyledAnimatedComponents.groupproj:
--------------------------------------------------------------------------------
1 |
2 |
3 | {F0F63C30-954D-4DCA-9AE6-A680FDF1E890}
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 |
50 | {304C1159-7EBD-49C6-B97C-34D8764E5E62}
51 | Release
52 | Win32;Win64
53 | True
54 |
55 |
56 | {53C0431B-B098-4665-9C3C-189698B0344B}
57 | Release
58 | Win32;Win64
59 | True
60 |
61 |
62 |
63 |
--------------------------------------------------------------------------------
/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/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 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/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/D13/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 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/D12/dclStyledAnimatedComponents.dpk:
--------------------------------------------------------------------------------
1 | {******************************************************************************}
2 | { }
3 | { StyledAnimatedComponents: a set of StyledComponents with animations }
4 | { using Skia4Delphi (needs Skia Package already installed }
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 | package dclStyledAnimatedComponents;
28 |
29 | {$R *.res}
30 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
31 | {$ALIGN 8}
32 | {$ASSERTIONS ON}
33 | {$BOOLEVAL OFF}
34 | {$DEBUGINFO OFF}
35 | {$EXTENDEDSYNTAX ON}
36 | {$IMPORTEDDATA ON}
37 | {$IOCHECKS ON}
38 | {$LOCALSYMBOLS OFF}
39 | {$LONGSTRINGS ON}
40 | {$OPENSTRINGS ON}
41 | {$OPTIMIZATION ON}
42 | {$OVERFLOWCHECKS OFF}
43 | {$RANGECHECKS OFF}
44 | {$REFERENCEINFO OFF}
45 | {$SAFEDIVIDE OFF}
46 | {$STACKFRAMES OFF}
47 | {$TYPEDADDRESS OFF}
48 | {$VARSTRINGCHECKS ON}
49 | {$WRITEABLECONST OFF}
50 | {$MINENUMSIZE 1}
51 | {$IMAGEBASE $400000}
52 | {$DEFINE RELEASE}
53 | {$ENDIF IMPLICITBUILDING}
54 | {$DESCRIPTION 'Ethea Styled Components with Animations by Skia4Delphi'}
55 | {$LIBSUFFIX AUTO}
56 | {$DESIGNONLY}
57 | {$IMPLICITBUILD OFF}
58 |
59 | requires
60 | DesignIDE,
61 | StyledAnimatedComponents,
62 | dclStyledComponents,
63 | Skia.Package.VCL.Designtime;
64 |
65 | contains
66 | Vcl.StyledAnimatedComponentsRegister in '..\Vcl.StyledAnimatedComponentsRegister.pas';
67 |
68 | end.
69 |
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/D13/dclStyledAnimatedComponents.dpk:
--------------------------------------------------------------------------------
1 | {******************************************************************************}
2 | { }
3 | { StyledAnimatedComponents: a set of StyledComponents with animations }
4 | { using Skia4Delphi (needs Skia Package already installed }
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 | package dclStyledAnimatedComponents;
28 |
29 | {$R *.res}
30 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
31 | {$ALIGN 8}
32 | {$ASSERTIONS ON}
33 | {$BOOLEVAL OFF}
34 | {$DEBUGINFO OFF}
35 | {$EXTENDEDSYNTAX ON}
36 | {$IMPORTEDDATA ON}
37 | {$IOCHECKS ON}
38 | {$LOCALSYMBOLS OFF}
39 | {$LONGSTRINGS ON}
40 | {$OPENSTRINGS ON}
41 | {$OPTIMIZATION ON}
42 | {$OVERFLOWCHECKS OFF}
43 | {$RANGECHECKS OFF}
44 | {$REFERENCEINFO OFF}
45 | {$SAFEDIVIDE OFF}
46 | {$STACKFRAMES OFF}
47 | {$TYPEDADDRESS OFF}
48 | {$VARSTRINGCHECKS ON}
49 | {$WRITEABLECONST OFF}
50 | {$MINENUMSIZE 1}
51 | {$IMAGEBASE $400000}
52 | {$DEFINE RELEASE}
53 | {$ENDIF IMPLICITBUILDING}
54 | {$DESCRIPTION 'Ethea Styled Components with Animations by Skia4Delphi'}
55 | {$LIBSUFFIX AUTO}
56 | {$DESIGNONLY}
57 | {$IMPLICITBUILD OFF}
58 |
59 | requires
60 | DesignIDE,
61 | StyledAnimatedComponents,
62 | dclStyledComponents,
63 | Skia.Package.VCL.Designtime;
64 |
65 | contains
66 | Vcl.StyledAnimatedComponentsRegister in '..\Vcl.StyledAnimatedComponentsRegister.pas';
67 |
68 | end.
69 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/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) + 'SvgShellExtensions.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), AException.Message,
101 | AException.StackTrace, sLineBreak]));
102 | except
103 | on e: EFOpenError do;
104 | end;
105 | end;
106 |
107 | initialization
108 |
109 | end.
110 |
--------------------------------------------------------------------------------
/Source/uSVGPreviewHandler.pas:
--------------------------------------------------------------------------------
1 | {******************************************************************************}
2 | { }
3 | { SVG Shell Extensions: Shell extensions for SVG files }
4 | { (Preview Panel, Thumbnail Icon, SVG Editor) }
5 | { }
6 | { Copyright (c) 2021-2025 (Ethea S.r.l.) }
7 | { Author: Carlo Barazzetta }
8 | { }
9 | { https://github.com/EtheaDev/SVGShellExtensions }
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: }
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 uSVGPreviewHandler;
33 |
34 | interface
35 |
36 | uses
37 | Classes,
38 | Controls,
39 | StdCtrls,
40 | SysUtils,
41 | uCommonPreviewHandler,
42 | uStreamPreviewHandler,
43 | uPreviewHandler;
44 |
45 | type
46 | TSVGPreviewHandler = class(TBasePreviewHandler)
47 | public
48 | constructor Create(AParent: TWinControl); override;
49 | end;
50 |
51 | const
52 | MySVG_PreviewHandlerGUID_64: TGUID = '{742ADF0E-3C4D-4F46-9E91-236BF0194C21}';
53 | MySVG_PreviewHandlerGUID_32: TGUID = '{203BA25A-6765-4537-B7F9-5A617EC5E193}';
54 |
55 | implementation
56 |
57 | Uses
58 | uLogExcept,
59 | SynEdit,
60 | Windows,
61 | Forms,
62 | uMisc;
63 | type
64 | TWinControlClass = class(TWinControl);
65 |
66 | constructor TSVGPreviewHandler.Create(AParent: TWinControl);
67 | begin
68 | TLogPreview.Add('TSVGPreviewHandler.Create');
69 | inherited Create(AParent);
70 | TLogPreview.Add('TSVGPreviewHandler Done');
71 | end;
72 |
73 | end.
74 |
--------------------------------------------------------------------------------
/Source/Main.pas:
--------------------------------------------------------------------------------
1 | {******************************************************************************}
2 | { }
3 | { SVG Shell Extensions: Shell extensions for SVG files }
4 | { (Preview Panel, Thumbnail Icon, SVG Editor) }
5 | { }
6 | { Copyright (c) 2021-2025 (Ethea S.r.l.) }
7 | { Author: Carlo Barazzetta }
8 | { }
9 | { https://github.com/EtheaDev/SVGShellExtensions }
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 Main;
33 |
34 | interface
35 |
36 | implementation
37 |
38 | uses
39 | uSVGThumbnailHandler,
40 | uSVGPreviewHandler,
41 | Winapi.ShlObj;
42 |
43 | initialization
44 | {$IFDEF WIN64}
45 | TSVGPreviewHandler.RegisterPreview(MySVG_PreviewHandlerGUID_64,
46 | 'SVG.PreviewHandler', 'Delphi SVG Preview Handler 64bit');
47 | {$ELSE}
48 | TSVGPreviewHandler.RegisterPreview(MySVG_PreviewHandlerGUID_32,
49 | 'SVG.PreviewHandler', 'Delphi SVG Preview Handler 32bit');
50 | {$ENDIF}
51 |
52 | {$IFDEF WIN64}
53 | TSVGThumbnailProvider.RegisterThumbnailProvider(MySVG_ThumbnailProviderGUID,
54 | 'SVG.ThumbnailProvider', 'Delphi SVG Thumbnail Provider 64bit');
55 | {$ELSE}
56 | TSVGThumbnailProvider.RegisterThumbnailProvider(MySVG_ThumbnailProviderGUID,
57 | 'SVG.ThumbnailProvider', 'Delphi SVG Thumbnail Provider 32bit');
58 | {$ENDIF}
59 |
60 | //Invalidate the shell's cache for Preview Thumbnails
61 | SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil);
62 |
63 | end.
64 |
65 |
--------------------------------------------------------------------------------
/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/StyledComponents/packages/D12/StyledAnimatedComponents.dpk:
--------------------------------------------------------------------------------
1 | {******************************************************************************}
2 | { }
3 | { StyledAnimatedComponents: a set of StyledComponents with animations }
4 | { using Skia4Delphi (needs Skia Package already installed }
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 | package StyledAnimatedComponents;
28 |
29 | {$R *.res}
30 | {$R '..\StyledAnimatedButton.dcr'}
31 | {$R '..\StyledAnimatedTaskDialog.dcr'}
32 | {$R '..\StyledAnimatedToolbar.dcr'}
33 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
34 | {$ALIGN 8}
35 | {$ASSERTIONS ON}
36 | {$BOOLEVAL OFF}
37 | {$DEBUGINFO OFF}
38 | {$EXTENDEDSYNTAX ON}
39 | {$IMPORTEDDATA ON}
40 | {$IOCHECKS ON}
41 | {$LOCALSYMBOLS OFF}
42 | {$LONGSTRINGS ON}
43 | {$OPENSTRINGS ON}
44 | {$OPTIMIZATION ON}
45 | {$OVERFLOWCHECKS OFF}
46 | {$RANGECHECKS OFF}
47 | {$REFERENCEINFO OFF}
48 | {$SAFEDIVIDE OFF}
49 | {$STACKFRAMES OFF}
50 | {$TYPEDADDRESS OFF}
51 | {$VARSTRINGCHECKS ON}
52 | {$WRITEABLECONST OFF}
53 | {$MINENUMSIZE 1}
54 | {$IMAGEBASE $400000}
55 | {$DEFINE RELEASE}
56 | {$ENDIF IMPLICITBUILDING}
57 | {$DESCRIPTION 'Ethea Styled Components with Animations by Skia4Delphi'}
58 | {$LIBSUFFIX AUTO}
59 | {$RUNONLY}
60 | {$IMPLICITBUILD OFF}
61 |
62 | requires
63 | StyledComponents,
64 | Skia.Package.VCL,
65 | Skia.Package.RTL;
66 |
67 | contains
68 | Vcl.SkAnimatedImageHelper in '..\..\source\Vcl.SkAnimatedImageHelper.pas',
69 | Vcl.StyledAnimatedButton in '..\..\source\Vcl.StyledAnimatedButton.pas',
70 | Vcl.StyledAnimatedTaskDialog in '..\..\source\Vcl.StyledAnimatedTaskDialog.pas',
71 | Skia.Vcl.StyledTaskDialogAnimatedUnit in '..\..\source\Skia.Vcl.StyledTaskDialogAnimatedUnit.pas' {StyledTaskDialogAnimated},
72 | Vcl.StyledAnimatedToolbar in '..\..\source\Vcl.StyledAnimatedToolbar.pas';
73 |
74 | end.
75 |
76 |
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/D13/StyledAnimatedComponents.dpk:
--------------------------------------------------------------------------------
1 | {******************************************************************************}
2 | { }
3 | { StyledAnimatedComponents: a set of StyledComponents with animations }
4 | { using Skia4Delphi (needs Skia Package already installed }
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 | package StyledAnimatedComponents;
28 |
29 | {$R *.res}
30 | {$R '..\StyledAnimatedButton.dcr'}
31 | {$R '..\StyledAnimatedTaskDialog.dcr'}
32 | {$R '..\StyledAnimatedToolbar.dcr'}
33 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
34 | {$ALIGN 8}
35 | {$ASSERTIONS ON}
36 | {$BOOLEVAL OFF}
37 | {$DEBUGINFO OFF}
38 | {$EXTENDEDSYNTAX ON}
39 | {$IMPORTEDDATA ON}
40 | {$IOCHECKS ON}
41 | {$LOCALSYMBOLS OFF}
42 | {$LONGSTRINGS ON}
43 | {$OPENSTRINGS ON}
44 | {$OPTIMIZATION ON}
45 | {$OVERFLOWCHECKS OFF}
46 | {$RANGECHECKS OFF}
47 | {$REFERENCEINFO OFF}
48 | {$SAFEDIVIDE OFF}
49 | {$STACKFRAMES OFF}
50 | {$TYPEDADDRESS OFF}
51 | {$VARSTRINGCHECKS ON}
52 | {$WRITEABLECONST OFF}
53 | {$MINENUMSIZE 1}
54 | {$IMAGEBASE $400000}
55 | {$DEFINE RELEASE}
56 | {$ENDIF IMPLICITBUILDING}
57 | {$DESCRIPTION 'Ethea Styled Components with Animations by Skia4Delphi'}
58 | {$LIBSUFFIX AUTO}
59 | {$RUNONLY}
60 | {$IMPLICITBUILD OFF}
61 |
62 | requires
63 | StyledComponents,
64 | Skia.Package.VCL,
65 | Skia.Package.RTL;
66 |
67 | contains
68 | Vcl.SkAnimatedImageHelper in '..\..\source\Vcl.SkAnimatedImageHelper.pas',
69 | Vcl.StyledAnimatedButton in '..\..\source\Vcl.StyledAnimatedButton.pas',
70 | Vcl.StyledAnimatedTaskDialog in '..\..\source\Vcl.StyledAnimatedTaskDialog.pas',
71 | Skia.Vcl.StyledTaskDialogAnimatedUnit in '..\..\source\Skia.Vcl.StyledTaskDialogAnimatedUnit.pas' {StyledTaskDialogAnimated},
72 | Vcl.StyledAnimatedToolbar in '..\..\source\Vcl.StyledAnimatedToolbar.pas';
73 |
74 | end.
75 |
76 |
--------------------------------------------------------------------------------
/Source/SVGShellExtensions.dpr:
--------------------------------------------------------------------------------
1 | {******************************************************************************}
2 | { }
3 | { SVG Shell Extensions: Shell extensions for SVG files }
4 | { (Preview Panel, Thumbnail Icon, SVG Editor) }
5 | { }
6 | { Copyright (c) 2021-2025 (Ethea S.r.l.) }
7 | { Author: Carlo Barazzetta }
8 | { }
9 | { https://github.com/EtheaDev/SVGShellExtensions }
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: }
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 | library SVGShellExtensions;
33 | uses
34 | ComServ,
35 | Main in 'Main.pas',
36 | uMisc in 'uMisc.pas',
37 | uRegistry in 'uRegistry.pas',
38 | uLogExcept in 'uLogExcept.pas',
39 | uStreamPreviewHandler in 'uStreamPreviewHandler.pas',
40 | uCommonPreviewHandler in 'uCommonPreviewHandler.pas',
41 | uPreviewHandler in 'uPreviewHandler.pas',
42 | uPreviewContainer in 'uPreviewContainer.pas' {PreviewContainer},
43 | uSVGPreviewHandler in 'uSVGPreviewHandler.pas',
44 | uPreviewHandlerRegister in 'uPreviewHandlerRegister.pas',
45 | uSVGThumbnailHandler in 'uSVGThumbnailHandler.pas',
46 | uThumbnailHandlerRegister in 'uThumbnailHandlerRegister.pas',
47 | uSVGContextMenuHandler in 'uSVGContextMenuHandler.pas',
48 | PreviewForm in 'PreviewForm.pas' {FrmPreview},
49 | SettingsForm in 'SettingsForm.pas' {UserSettingsForm},
50 | uSettings in 'uSettings.pas',
51 | DResources in 'DResources.pas' {dmResources: TDataModule},
52 | dlgSearchText in 'dlgSearchText.pas' {TextSearchDialog},
53 | uAbout in 'uAbout.pas' {FrmAbout};
54 |
55 | exports
56 | DllGetClassObject,
57 | DllCanUnloadNow,
58 | DllRegisterServer,
59 | DllUnregisterServer,
60 | DllInstall;
61 |
62 | {$R *.res}
63 |
64 | begin
65 | end.
66 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/Source/SVGShellExtensions32.dpr:
--------------------------------------------------------------------------------
1 | {******************************************************************************}
2 | { }
3 | { SVG Shell Extensions: Shell extensions for SVG files }
4 | { (Preview Panel, Thumbnail Icon, SVG Editor) }
5 | { }
6 | { Copyright (c) 2021-2025 (Ethea S.r.l.) }
7 | { Author: Carlo Barazzetta }
8 | { }
9 | { https://github.com/EtheaDev/SVGShellExtensions }
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: }
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 | library SVGShellExtensions32;
33 | uses
34 | ComServ,
35 | Main in 'Main.pas',
36 | uMisc in 'uMisc.pas',
37 | uRegistry in 'uRegistry.pas',
38 | uLogExcept in 'uLogExcept.pas',
39 | uStreamPreviewHandler in 'uStreamPreviewHandler.pas',
40 | uCommonPreviewHandler in 'uCommonPreviewHandler.pas',
41 | uPreviewHandler in 'uPreviewHandler.pas',
42 | uPreviewContainer in 'uPreviewContainer.pas' {PreviewContainer},
43 | uSVGPreviewHandler in 'uSVGPreviewHandler.pas',
44 | uPreviewHandlerRegister in 'uPreviewHandlerRegister.pas',
45 | uSVGThumbnailHandler in 'uSVGThumbnailHandler.pas',
46 | uThumbnailHandlerRegister in 'uThumbnailHandlerRegister.pas',
47 | uSVGContextMenuHandler in 'uSVGContextMenuHandler.pas',
48 | PreviewForm in 'PreviewForm.pas' {FrmPreview},
49 | SettingsForm in 'SettingsForm.pas' {UserSettingsForm},
50 | uSettings in 'uSettings.pas',
51 | DResources in 'DResources.pas' {dmResources: TDataModule},
52 | dlgSearchText in 'dlgSearchText.pas' {TextSearchDialog},
53 | uAbout in 'uAbout.pas' {FrmAbout};
54 |
55 | exports
56 | //Initialize,
57 | //Finalize,
58 | DllGetClassObject,
59 | DllCanUnloadNow,
60 | DllRegisterServer,
61 | DllUnregisterServer,
62 | DllInstall;
63 |
64 | {$R *.res}
65 |
66 | begin
67 | end.
68 |
--------------------------------------------------------------------------------
/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 |
--------------------------------------------------------------------------------
/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/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 |
--------------------------------------------------------------------------------
/Source/dlgConfirmReplace.pas:
--------------------------------------------------------------------------------
1 | {******************************************************************************}
2 | { }
3 | { SVG Shell Extensions: Shell extensions for SVG files }
4 | { (Preview Panel, Thumbnail Icon, SVG Editor) }
5 | { }
6 | { Copyright (c) 2021-2025 (Ethea S.r.l.) }
7 | { Author: Carlo Barazzetta }
8 | { }
9 | { https://github.com/EtheaDev/SVGShellExtensions }
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 dlgConfirmReplace;
27 |
28 | {$I SynEdit.inc}
29 |
30 | interface
31 |
32 | uses
33 | Windows, SysUtils, Classes, Graphics, Controls, Forms,
34 | StdCtrls, ExtCtrls;
35 |
36 | type
37 | TConfirmReplaceDialog = class(TForm)
38 | btnReplace: TButton;
39 | lblConfirmation: TLabel;
40 | btnSkip: TButton;
41 | btnCancel: TButton;
42 | btnReplaceAll: TButton;
43 | Image: TImage;
44 | procedure FormCreate(Sender: TObject);
45 | procedure FormDestroy(Sender: TObject);
46 | public
47 | procedure PrepareShow(AEditorRect: TRect; X, Y1, Y2: integer;
48 | AReplaceText: string);
49 | end;
50 |
51 | var
52 | ConfirmReplaceDialog: TConfirmReplaceDialog;
53 |
54 | implementation
55 |
56 | {$R *.DFM}
57 |
58 | resourcestring
59 | SAskReplaceText = 'Replace this occurence of "%s"?';
60 |
61 | { TConfirmReplaceDialog }
62 |
63 | procedure TConfirmReplaceDialog.FormCreate(Sender: TObject);
64 | begin
65 | Image.Picture.Icon.Handle := LoadIcon(0, IDI_QUESTION);
66 | end;
67 |
68 | procedure TConfirmReplaceDialog.FormDestroy(Sender: TObject);
69 | begin
70 | ConfirmReplaceDialog := nil;
71 | end;
72 |
73 | procedure TConfirmReplaceDialog.PrepareShow(AEditorRect: TRect;
74 | X, Y1, Y2: integer; AReplaceText: string);
75 | var
76 | nW, nH: integer;
77 | begin
78 | lblConfirmation.Caption := Format(SAskReplaceText, [AReplaceText]);
79 | nW := AEditorRect.Right - AEditorRect.Left;
80 | nH := AEditorRect.Bottom - AEditorRect.Top;
81 |
82 | if nW <= Width then
83 | X := AEditorRect.Left - (Width - nW) div 2
84 | else
85 | begin
86 | if X + Width > AEditorRect.Right then
87 | X := AEditorRect.Right - Width;
88 | end;
89 | if Y2 > AEditorRect.Top + MulDiv(nH, 2, 3) then
90 | Y2 := Y1 - Height - 4
91 | else
92 | Inc(Y2, 4);
93 | SetBounds(X, Y2, Width, Height);
94 | end;
95 |
96 | end.
97 |
--------------------------------------------------------------------------------
/Ext/StyledComponents/source/Vcl.StyledMessagesHooks.pas:
--------------------------------------------------------------------------------
1 | {******************************************************************************}
2 | { }
3 | { StyledMessagesHooks: an interposer Unit to use Styled Dialog Boxes }
4 | { using Standard Delphi calls MessageDialog or ShowMessage }
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.StyledMessagesHooks;
28 |
29 | interface
30 |
31 | {$INCLUDE StyledComponents.inc}
32 |
33 | uses
34 | Vcl.Dialogs
35 | ;
36 |
37 | function TaskMessageDlg(const Title, Msg: string; DlgType: TMsgDlgType;
38 | Buttons: TMsgDlgButtons; HelpCtx: Longint): Integer;
39 |
40 | function MessageDlg(const Msg: string; DlgType: TMsgDlgType;
41 | Buttons: TMsgDlgButtons; HelpCtx: Longint): Integer;
42 |
43 | function MessageDlgPos(const Msg: string; DlgType: TMsgDlgType;
44 | Buttons: TMsgDlgButtons; HelpCtx: Longint;
45 | X: Integer = -1; Y: Integer = -1): Integer;
46 |
47 | function TaskDlgPos(const Title, Msg: string; DlgType: TMsgDlgType;
48 | Buttons: TMsgDlgButtons; HelpCtx: Longint;
49 | X: Integer = -1; Y: Integer = -1): Integer;
50 |
51 | procedure ShowMessage(const Msg: string);
52 |
53 | implementation
54 |
55 | uses
56 | Vcl.StyledTaskDialog
57 | ;
58 |
59 | function TaskMessageDlg(const Title, Msg: string; DlgType: TMsgDlgType;
60 | Buttons: TMsgDlgButtons; HelpCtx: Longint): Integer;
61 | begin
62 | Result := StyledTaskMessageDlg(Title, Msg, DlgType, Buttons, HelpCtx);
63 | end;
64 |
65 | function MessageDlg(const Msg: string; DlgType: TMsgDlgType;
66 | Buttons: TMsgDlgButtons; HelpCtx: Longint): Integer;
67 | begin
68 | Result := StyledMessageDlg(Msg, DlgType, Buttons, HelpCtx);
69 | end;
70 |
71 | function MessageDlgPos(const Msg: string; DlgType: TMsgDlgType;
72 | Buttons: TMsgDlgButtons; HelpCtx: Longint;
73 | X: Integer = -1; Y: Integer = -1): Integer;
74 | begin
75 | Result := StyledMessageDlgPos(Msg, DlgType, Buttons, HelpCtx, X, Y);
76 | end;
77 |
78 | function TaskDlgPos(const Title, Msg: string; DlgType: TMsgDlgType;
79 | Buttons: TMsgDlgButtons; HelpCtx: Longint;
80 | X: Integer = -1; Y: Integer = -1): Integer;
81 | begin
82 | Result := StyledTaskMessageDlgPos(Title, Msg, DlgType, Buttons, HelpCtx, X, Y);
83 | end;
84 |
85 | procedure ShowMessage(const Msg: string);
86 | begin
87 | StyledShowMessage(Msg);
88 | end;
89 |
90 | end.
91 |
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/D12/StyledComponents.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 StyledComponents;
27 |
28 | {$R *.res}
29 | {$R '..\StyledButton.dcr'}
30 | {$R '..\StyledTaskDialog.dcr'}
31 | {$R '..\StyledToolbar.dcr'}
32 | {$R '..\StyledDbNavigator.dcr'}
33 | {$R '..\StyledButtonGroup.dcr'}
34 | {$R '..\StyledCategoryButtons.dcr'}
35 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
36 | {$ALIGN 8}
37 | {$ASSERTIONS ON}
38 | {$BOOLEVAL OFF}
39 | {$DEBUGINFO OFF}
40 | {$EXTENDEDSYNTAX ON}
41 | {$IMPORTEDDATA ON}
42 | {$IOCHECKS ON}
43 | {$LOCALSYMBOLS OFF}
44 | {$LONGSTRINGS ON}
45 | {$OPENSTRINGS ON}
46 | {$OPTIMIZATION ON}
47 | {$OVERFLOWCHECKS OFF}
48 | {$RANGECHECKS OFF}
49 | {$REFERENCEINFO OFF}
50 | {$SAFEDIVIDE OFF}
51 | {$STACKFRAMES OFF}
52 | {$TYPEDADDRESS OFF}
53 | {$VARSTRINGCHECKS ON}
54 | {$WRITEABLECONST OFF}
55 | {$MINENUMSIZE 1}
56 | {$IMAGEBASE $400000}
57 | {$DEFINE RELEASE}
58 | {$ENDIF IMPLICITBUILDING}
59 | {$DESCRIPTION 'Ethea Styled Components Library'}
60 | {$LIBSUFFIX AUTO}
61 | {$RUNONLY}
62 | {$IMPLICITBUILD OFF}
63 |
64 | requires
65 | rtl,
66 | vcl,
67 | vclimg,
68 | dbrtl,
69 | vcldb,
70 | bindcomp;
71 |
72 | contains
73 | Vcl.StyledButton in '..\..\source\Vcl.StyledButton.pas',
74 | Vcl.ButtonStylesAttributes in '..\..\source\Vcl.ButtonStylesAttributes.pas',
75 | Vcl.StandardButtonStyles in '..\..\source\Vcl.StandardButtonStyles.pas',
76 | Vcl.ColorButtonStyles in '..\..\source\Vcl.ColorButtonStyles.pas',
77 | Vcl.BootstrapButtonStyles in '..\..\source\Vcl.BootstrapButtonStyles.pas',
78 | Vcl.AngularButtonStyles in '..\..\source\Vcl.AngularButtonStyles.pas',
79 | Vcl.StyledTaskDialog in '..\..\source\Vcl.StyledTaskDialog.pas',
80 | Vcl.StyledCmpMessages in '..\..\source\Vcl.StyledCmpMessages.pas',
81 | Vcl.StyledCmpStrUtils in '..\..\source\Vcl.StyledCmpStrUtils.pas',
82 | Vcl.StyledTaskDialogStdUnit in '..\..\source\Vcl.StyledTaskDialogStdUnit.pas',
83 | Vcl.StyledTaskDialogFormUnit in '..\..\source\Vcl.StyledTaskDialogFormUnit.pas' {StyledTaskDialogForm},
84 | Vcl.StyledToolbar in '..\..\source\Vcl.StyledToolbar.pas',
85 | Vcl.StyledDbNavigator in '..\..\source\Vcl.StyledDbNavigator.pas',
86 | Vcl.StyledButtonGroup in '..\..\source\Vcl.StyledButtonGroup.pas',
87 | Vcl.StyledCategoryButtons in '..\..\source\Vcl.StyledCategoryButtons.pas';
88 |
89 | end.
90 |
91 |
--------------------------------------------------------------------------------
/Ext/StyledComponents/packages/D13/StyledComponents.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 StyledComponents;
27 |
28 | {$R *.res}
29 | {$R '..\StyledButton.dcr'}
30 | {$R '..\StyledTaskDialog.dcr'}
31 | {$R '..\StyledToolbar.dcr'}
32 | {$R '..\StyledDbNavigator.dcr'}
33 | {$R '..\StyledButtonGroup.dcr'}
34 | {$R '..\StyledCategoryButtons.dcr'}
35 | {$IFDEF IMPLICITBUILDING This IFDEF should not be used by users}
36 | {$ALIGN 8}
37 | {$ASSERTIONS ON}
38 | {$BOOLEVAL OFF}
39 | {$DEBUGINFO OFF}
40 | {$EXTENDEDSYNTAX ON}
41 | {$IMPORTEDDATA ON}
42 | {$IOCHECKS ON}
43 | {$LOCALSYMBOLS OFF}
44 | {$LONGSTRINGS ON}
45 | {$OPENSTRINGS ON}
46 | {$OPTIMIZATION ON}
47 | {$OVERFLOWCHECKS OFF}
48 | {$RANGECHECKS OFF}
49 | {$REFERENCEINFO OFF}
50 | {$SAFEDIVIDE OFF}
51 | {$STACKFRAMES OFF}
52 | {$TYPEDADDRESS OFF}
53 | {$VARSTRINGCHECKS ON}
54 | {$WRITEABLECONST OFF}
55 | {$MINENUMSIZE 1}
56 | {$IMAGEBASE $400000}
57 | {$DEFINE RELEASE}
58 | {$ENDIF IMPLICITBUILDING}
59 | {$DESCRIPTION 'Ethea Styled Components Library'}
60 | {$LIBSUFFIX AUTO}
61 | {$RUNONLY}
62 | {$IMPLICITBUILD OFF}
63 |
64 | requires
65 | rtl,
66 | vcl,
67 | vclimg,
68 | dbrtl,
69 | vcldb,
70 | bindcomp;
71 |
72 | contains
73 | Vcl.StyledButton in '..\..\source\Vcl.StyledButton.pas',
74 | Vcl.ButtonStylesAttributes in '..\..\source\Vcl.ButtonStylesAttributes.pas',
75 | Vcl.StandardButtonStyles in '..\..\source\Vcl.StandardButtonStyles.pas',
76 | Vcl.ColorButtonStyles in '..\..\source\Vcl.ColorButtonStyles.pas',
77 | Vcl.BootstrapButtonStyles in '..\..\source\Vcl.BootstrapButtonStyles.pas',
78 | Vcl.AngularButtonStyles in '..\..\source\Vcl.AngularButtonStyles.pas',
79 | Vcl.StyledTaskDialog in '..\..\source\Vcl.StyledTaskDialog.pas',
80 | Vcl.StyledCmpMessages in '..\..\source\Vcl.StyledCmpMessages.pas',
81 | Vcl.StyledCmpStrUtils in '..\..\source\Vcl.StyledCmpStrUtils.pas',
82 | Vcl.StyledTaskDialogStdUnit in '..\..\source\Vcl.StyledTaskDialogStdUnit.pas',
83 | Vcl.StyledTaskDialogFormUnit in '..\..\source\Vcl.StyledTaskDialogFormUnit.pas' {StyledTaskDialogForm},
84 | Vcl.StyledToolbar in '..\..\source\Vcl.StyledToolbar.pas',
85 | Vcl.StyledDbNavigator in '..\..\source\Vcl.StyledDbNavigator.pas',
86 | Vcl.StyledButtonGroup in '..\..\source\Vcl.StyledButtonGroup.pas',
87 | Vcl.StyledCategoryButtons in '..\..\source\Vcl.StyledCategoryButtons.pas';
88 |
89 | end.
90 |
91 |
--------------------------------------------------------------------------------
/Ext/SynEdit/Source/dlgReplaceText.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: dlgReplaceText.pas, 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: dlgReplaceText.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 dlgReplaceText;
39 |
40 | {$I SynEdit.inc}
41 |
42 | interface
43 |
44 | uses
45 | SysUtils, Classes, Controls, Forms,
46 | dlgSearchText, StdCtrls, ExtCtrls;
47 |
48 | type
49 | TTextReplaceDialog = class(TTextSearchDialog)
50 | ReplaceWidthLabel: TLabel;
51 | cbReplaceText: TComboBox;
52 | procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
53 | private
54 | function GetReplaceText: string;
55 | function GetReplaceTextHistory: string;
56 | procedure SetReplaceText(Value: string);
57 | procedure SetReplaceTextHistory(Value: string);
58 | public
59 | property ReplaceText: string read GetReplaceText write SetReplaceText;
60 | property ReplaceTextHistory: string read GetReplaceTextHistory
61 | write SetReplaceTextHistory;
62 | end;
63 |
64 | implementation
65 |
66 | {$R *.DFM}
67 |
68 | { TTextReplaceDialog }
69 |
70 | function TTextReplaceDialog.GetReplaceText: string;
71 | begin
72 | Result := cbReplaceText.Text;
73 | end;
74 |
75 | function TTextReplaceDialog.GetReplaceTextHistory: string;
76 | var
77 | i: Integer;
78 | begin
79 | Result := '';
80 | for i := 0 to cbReplaceText.Items.Count - 1 do
81 | begin
82 | if i >= 10 then
83 | break;
84 | if i > 0 then
85 | Result := Result + #13#10;
86 | Result := Result + cbReplaceText.Items[i];
87 | end;
88 | end;
89 |
90 | procedure TTextReplaceDialog.SetReplaceText(Value: string);
91 | begin
92 | cbReplaceText.Text := Value;
93 | end;
94 |
95 | procedure TTextReplaceDialog.SetReplaceTextHistory(Value: string);
96 | begin
97 | cbReplaceText.Items.Text := Value;
98 | end;
99 |
100 | procedure TTextReplaceDialog.FormCloseQuery(Sender: TObject;
101 | var CanClose: Boolean);
102 | var
103 | s: string;
104 | i: Integer;
105 | begin
106 | inherited;
107 | if ModalResult = mrOK then
108 | begin
109 | s := cbReplaceText.Text;
110 | if s <> '' then
111 | begin
112 | i := cbReplaceText.Items.IndexOf(s);
113 | if i > -1 then
114 | begin
115 | cbReplaceText.Items.Delete(i);
116 | cbReplaceText.Items.Insert(0, s);
117 | cbReplaceText.Text := s;
118 | end
119 | else
120 | cbReplaceText.Items.Insert(0, s);
121 | end;
122 | end;
123 | end;
124 |
125 | end.
126 |
--------------------------------------------------------------------------------
/Ext/SVGIconImageList/Image32/source/Img32.SVG.HtmlValues.inc:
--------------------------------------------------------------------------------
1 | //hash identifiers with appended underscores refer to
2 | //case sensitive string values (ie they contain capitals)
3 | h_038_aacute : val := 225;
4 | h_038_aacute_ : val := 193;
5 | h_038_acirc : val := 226;
6 | h_038_acirc_ : val := 194;
7 | h_038_acute : val := 180;
8 | h_038_aelig : val := 230;
9 | h_038_aelig_ : val := 198;
10 | h_038_agrave : val := 224;
11 | h_038_agrave_ : val := 192;
12 | h_038_alefsym : val := $2135;
13 | h_038_alpha : val := $3B1;
14 | h_038_Alpha_ : val := $391;
15 | h_038_amp : val := $26;
16 | h_038_apos : val := $27;
17 | h_038_aring_ : val := 197;
18 | h_038_aring : val := 229;
19 | h_038_ast : val := $2A;
20 | h_038_atilde_ : val := 195;
21 | h_038_atilde : val := 227;
22 | h_038_auml_ : val := 196;
23 | h_038_auml : val := 228;
24 | h_038_bull : val := $2022;
25 | h_038_cap : val := $2229;
26 | h_038_clubs : val := $2663;
27 | h_038_cup : val := $222A;
28 | h_038_brvbar : val := 166;
29 | h_038_ccedil : val := 231;
30 | h_038_cedil : val := 184;
31 | h_038_cent : val := 162;
32 | h_038_copy : val := 169;
33 | h_038_curren : val := 164;
34 | h_038_deg : val := 176;
35 | h_038_diams : val := $2666;
36 | h_038_divide : val := $F7;
37 | h_038_eacute_ : val := 201;
38 | h_038_eacute : val := 233;
39 | h_038_ecirc_ : val := 202;
40 | h_038_ecirc : val := 234;
41 | h_038_egrave : val := 232;
42 | h_038_egrave_ : val := 200;
43 | h_038_eth : val := 240;
44 | h_038_euml_ : val := 203;
45 | h_038_euml : val := 235;
46 | h_038_euro : val := 128;
47 | h_038_frac12 : val := 189;
48 | h_038_frac14 : val := 188;
49 | h_038_frac34 : val := 190;
50 | h_038_ge : val := $2265;
51 | h_038_gt : val := $3E;
52 | h_038_hearts : val := $2665;
53 | h_038_iacute_ : val := 205;
54 | h_038_iacute : val := 237;
55 | h_038_icirc_ : val := 206;
56 | h_038_icirc : val := 238;
57 | h_038_iexcl : val := 161;
58 | h_038_igrave_ : val := 204;
59 | h_038_igrave : val := 236;
60 | h_038_int : val := $222B;
61 | h_038_iquest : val := 191;
62 | h_038_iuml_ : val := 207;
63 | h_038_iuml : val := 239;
64 | h_038_laquo : val := 171;
65 | h_038_le : val := $2264;
66 | h_038_lt : val := $3C;
67 | h_038_macr : val := 175;
68 | h_038_micro : val := 181;
69 | h_038_middot : val := 183;
70 | h_038_nbsp : val := 32;
71 | h_038_not : val := 172;
72 | h_038_ntilde : val := 241;
73 | h_038_oacute_ : val := 211;
74 | h_038_oacute : val := 243;
75 | h_038_ocirc_ : val := 212;
76 | h_038_ocirc : val := 244;
77 | h_038_ograve_ : val := 210;
78 | h_038_ograve : val := 242;
79 | h_038_ordf : val := 170;
80 | h_038_ordm : val := 186;
81 | h_038_oslash : val := 248;
82 | h_038_otilde_ : val := 213;
83 | h_038_otilde : val := 245;
84 | h_038_ouml_ : val := 214;
85 | h_038_ouml : val := 246;
86 | h_038_para : val := 182;
87 | h_038_plusmn : val := 177;
88 | h_038_pound : val := 163;
89 | h_038_quot : val := $22;
90 | h_038_raquo : val := 187;
91 | h_038_reg : val := 174;
92 | h_038_sect : val := 167;
93 | h_038_shy : val := 173;
94 | h_038_spades : val := $2660;
95 | h_038_sup1 : val := 185;
96 | h_038_sup2 : val := 178;
97 | h_038_sup3 : val := 179;
98 | h_038_szlig : val := 223;
99 | h_038_thorn : val := 254;
100 | h_038_times : val := 215;
101 | h_038_uacute_ : val := 218;
102 | h_038_uacute : val := 250;
103 | h_038_ucirc : val := 251;
104 | h_038_ucirc_ : val := 219;
105 | h_038_ugrave_ : val := 217;
106 | h_038_ugrave : val := 249;
107 | h_038_uml : val := 168;
108 | h_038_uuml_ : val := 220;
109 | h_038_uuml : val := 252;
110 | h_038_yacute : val := 253;
111 | h_038_yen : val := 165;
112 |
--------------------------------------------------------------------------------
/Icons/svg-logo-v.svg:
--------------------------------------------------------------------------------
1 |
65 |
--------------------------------------------------------------------------------