Index: build.bat ================================================================== --- build.bat +++ build.bat @@ -8,10 +8,12 @@ rmdir build\ ) mkdir build\ mkdir build\filemorph\ +call xcopy scriptlibs C:\Tcl\lib\ /s /i /y +call xcopy winlibs C:\Tcl\lib\ /s /i /y call xcopy C:\Strawberry\c\bin\*.dll build\filemorph\ /s /i /y call xcopy C:\Strawberry\perl\bin\*.dll build\filemorph\ /s /i /y call xcopy C:\Tcl\bin\*.dll build\filemorph\ /s /i /y call xcopy C:\Strawberry\perl\lib build\filemorph\lib /s /i /y call xcopy C:\Strawberry\perl\site build\filemorph\site /s /i /y @@ -27,17 +29,6 @@ call windres icons.rc -o coff -o icons.o call windres versioninfo.rc -o coff -o versioninfo.o call perl build.pl call xcopy FileMorph.exe build\filemorph\ - -::call xcopy scriptlibs C:\Tcl\lib\ /s /i /y - -::call xcopy winlibs C:\Tcl\lib\ /s /i /y - -::call pp -C -M Encode::Byte -l zlib1.dll -l tcl86.dll -l tk86.dll -a "C:/Tcl;script/Tcl" filemorph.pl -o FileMorph.exe - -::call "C:\Program Files (x86)\Resource Hacker\ResourceHacker.exe" -modify "FileMorph.exe", "FileMorph.exe", "filemorph-exe-par.ico", ICONGROUP, WINEXE, 0 - -::call ie4uinit.exe -ClearIconCache - DELETED filemorph-exe-par.ico Index: filemorph-exe-par.ico ================================================================== --- filemorph-exe-par.ico +++ filemorph-exe-par.ico cannot compute difference between binary files Index: filemorph.pl ================================================================== --- filemorph.pl +++ filemorph.pl @@ -11,11 +11,10 @@ use File::Spec::Functions; use File::Copy::Recursive qw(dircopy ); use Env qw(HOME); use File::Path qw(remove_tree); use File::Copy::Recursive qw (rmove); -our $DOS; print "FileMorph is starting up...\n"; BEGIN { @@ -1171,11 +1170,11 @@ #initialize the app sub startUp { $appname = 'FileMorph'; - $appversion = '2.5'; + $appversion = '2.6'; &Tkx::machelp__setAppName($appname, $appversion); &Tkx::softwareupdate__setAppName($appname); &Tkx::softwareupdate__setVersion($appname, $appversion); #check for app support directory @@ -1235,12 +1234,18 @@ ); } } if ($appversion < $versionnumber) { - &Tkx::softwareupdate__updatePitchPerl($appname, - $versionnumber, $appversion, $changelog); + if ($IS_AQUA) { + &Tkx::softwareupdate__updatePitchPerl($appname, + $versionnumber, $appversion, $changelog); + } + if ($IS_WINDOWS) { + &Tkx::softwareupdate_winPitch($appname, $versionnumber,$appversion); + } + } else { &Tkx::softwareupdate__upToDate(); } } Index: install.bat ================================================================== --- install.bat +++ install.bat @@ -9,13 +9,13 @@ if not exist %config_dir% ( mkdir %config_dir% ) call 7za x filemorph.zip -call xcopy bin %installdir%\bin /s /i /y -call xcopy lib %installdir%\lib /s /i /y -call xcopy filemorph %installdir%\filemorph /s /i /y +xcopy bin %install_dir%\bin /s /i /y +xcopy lib %install_dir%\lib /s /i /y +xcopy filemorph %install_dir%\filemorph /s /i /y copy /Y uninstall.bat %config_dir%\ copy /Y filemorph.ico %config_dir%\ ::test for key, add to registry reg query "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\FileMorph.exe" Index: makeinstaller.bat ================================================================== --- makeinstaller.bat +++ makeinstaller.bat @@ -1,10 +1,10 @@ +call 7za a filemorph.zip .\build\* + iexpress /n filemorph.sed -call 7za a filemorph.zip .\build\* - -set VERSION="2.5.0.0 (%date%)" +set VERSION="2.6.0.0 (%date%)" set FILEDESCR=/s desc "Installer for FileMorph" set COMPINFO=/s company "WordTech Communications LLC" /s (c) "(c) 2015" -set PRODINFO=/s product "FileMorph" /pv "2.5.0.0" +set PRODINFO=/s product "FileMorph" /pv "2.6.0.0" "C:\Users\kevin\Desktop\verpatch.exe" /va FileMorph_Setup.exe %VERSION% %FILEDESCR% %COMPINFO% %PRODINFO% Index: scriptlibs/machelp/help.txt ================================================================== --- scriptlibs/machelp/help.txt +++ scriptlibs/machelp/help.txt @@ -128,17 +128,19 @@ * Icon fonts from Iconic project. Website and license: [https://github.com/somerandomdude/Iconic]. * Help viewer by Keith Vetter: [http://wiki.tcl.tk/19649]. * TkDND for drag and drop. Website and license: [http://sourceforge.net/projects/tkdnd/]. * aem package for AppleScript support. Website and license: [http://fossil.codebykevin.com]/ * Twapi packages for Windows integration. Website and license: [http://twapi.sourceforge.net] - * Perl Packager for Windows deployment. Website and license: [http://search.cpan.org/~autrijus/PAR-0.85_01/script/pp] - * Resource Hacker for final modification of Windows executable. [http://angusj.com/resourcehacker/] ------------------- title: FileMorph Version History -alias: History +alias: History + +'''2.6 (October 15, 2015):''' + * Changes in Windows installer. + * Fix bug in event processing and image rendering on OS X. '''2.5 (October 30, 2015):''' * Improvements in Windows installer. * Fix bug in image display on OS X. @@ -175,14 +177,14 @@ title: License alias: License '''The MIT License (MIT)''' -FileMoroph source code: [http://fossil.codebykevin.com/fossil.cgi/filemorph/] +FileMorph source code: [http://fossil.codebykevin.com/fossil.cgi/filemorph/] Copyright (c) 2015 WordTech Communications LLC Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Index: scriptlibs/softwareupdate/softwareupdate.tcl ================================================================== --- scriptlibs/softwareupdate/softwareupdate.tcl +++ scriptlibs/softwareupdate/softwareupdate.tcl @@ -272,11 +272,24 @@ raise .update wm transient .update . } +proc winPitch {name newversion oldversion} { + set answer [tk_messageBox -icon info -title "New Version Available" -message "New Version Available" -detail "$name $newversion is available--you have $currentapp. Would you like to download it now?" -type yesno + ] + + switch -- $answer { + yes { + xplat::launch http://www.codebykevin.com/$name.html + } + no { + return + } + } +} #"busy" dialog proc checkingForUpdates {} { variable appname variable icon @@ -449,13 +462,13 @@ exit } } "win32" { - - softwareupdate::writeBatch $appname - eval exec [auto_execok start] /b "" cmd /c [file join $tmpdir deleteapp.bat] & + + softwareupdate::writeBatch $appname + eval exec [auto_execok start] /b "" cmd /c [file join $tmpdir deleteapp.bat] & } "x11" { tk_messageBox -icon info -parent . -message "Please ask the maintainer of $appname on your platform to prepare a release of the latest version." return @@ -469,32 +482,32 @@ } proc writeBatch {appname} { -variable tmpdir -variable currentinstall - -set script { -cd $currentinstall -taskkill /IM $appname.exe /F -rename $appname.exe ${appname}-tmp.exe -cd $tmpdir -copy [file nativename [file join $tmpdir $appname.exe]] [file nativename [file join $currentinstall $appname.exe]] -cd $currentinstall -start $appname.exe -del ${appname}-tmp.exe -cd $tmpdir -::del deleteapp.bat -} - -set batchscript [subst $script] -set delscript [open [file join $tmpdir deleteapp.bat] w] -puts $delscript $batchscript -close $delscript + variable tmpdir + variable currentinstall + + set script { + cd $currentinstall + taskkill /IM $appname.exe /F + rename $appname.exe ${appname}-tmp.exe + cd $tmpdir + copy [file nativename [file join $tmpdir $appname.exe]] [file nativename [file join $currentinstall $appname.exe]] + cd $currentinstall + start $appname.exe + del ${appname}-tmp.exe + cd $tmpdir + ::del deleteapp.bat + } + + set batchscript [subst $script] + set delscript [open [file join $tmpdir deleteapp.bat] w] + puts $delscript $batchscript + close $delscript } namespace export * -} +}