TextSweep

Check-in [20268b140c]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:First changes for 4.0
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 20268b140c60dd2603dceea651d46b99c0815a79
User & Date: kevin 2017-12-26 21:37:07
Context
2017-12-27
02:11
Begin implementation of scripting API check-in: c774a344e7 user: kevin tags: trunk
2017-12-26
21:37
First changes for 4.0 check-in: 20268b140c user: kevin tags: trunk
2017-06-21
03:51
Tweak to regproc check-in: fe66012281 user: kevin tags: trunk
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to Info-cbk.plist.

1
2
3
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
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>English</string>
	<key>CFBundleExecutable</key>
	<string>TextSweep</string>
	<key>CFBundleGetInfoString</key>
	<string>TextSweep 3.2.0 (c) 2017 WordTech Communications LLC</string>
        <key>NSPrincipalClass</key>
        <string>NSApplication</string>
<key>NSHighResolutionCapable</key>
	<true/>
	<key>LSMinimumSystemVersionByArchitecture</key>
	<dict>
	<key>i386</key>
	<string>10.12</string>
	<key>x86_64</key>
	<string>10.12</string>
	</dict>
	<key>LSArchitecturePriority</key>
<array>
<string>x86_64</string>
<string>i386</string>
</array>
	<key>LSApplicationCategoryType</key>
	<string>public.app-category.utilities</string>
	<key>NSHumanReadableCopyright</key>
	<string>(c) 2017 WordTech Communications LLC</string>
	<key>CFBundleIconFile</key>
	<string>textsweep.icns</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleDocumentTypes</key>
	<array>
		<dict>









|







|

|









|







1
2
3
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
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>English</string>
	<key>CFBundleExecutable</key>
	<string>TextSweep</string>
	<key>CFBundleGetInfoString</key>
	<string>TextSweep 3.3.0 (c) 2018 WordTech Communications LLC</string>
        <key>NSPrincipalClass</key>
        <string>NSApplication</string>
<key>NSHighResolutionCapable</key>
	<true/>
	<key>LSMinimumSystemVersionByArchitecture</key>
	<dict>
	<key>i386</key>
	<string>10.13</string>
	<key>x86_64</key>
	<string>10.13</string>
	</dict>
	<key>LSArchitecturePriority</key>
<array>
<string>x86_64</string>
<string>i386</string>
</array>
	<key>LSApplicationCategoryType</key>
	<string>public.app-category.utilities</string>
	<key>NSHumanReadableCopyright</key>
	<string>(c) 2018 WordTech Communications LLC</string>
	<key>CFBundleIconFile</key>
	<string>textsweep.icns</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleDocumentTypes</key>
	<array>
		<dict>
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
	<key>CFBundleDisplayName</key>
	<string>TextSweep</string>
	<key>CFBundleIdentifier</key>
	<string>com.codebykevin.com.textsweep-cbk</string>
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>3.2.0</string>
	<key>CFBundleVersion</key>
	<string>3.2.0</string>
	<key>LSMinimumSystemVersion</key>
	<string>10.12</string>
	<key>LSRequiresCarbon</key>
	<true/>	
	<key>NSSupportsAutomaticTermination</key>
	<string>YES</string>
	<key>NSSupportsSuddenTermination</key>
	<string>YES</string>
  <key>SUFeedURL</key>
	<string>http://www.codebykevin.com/textsweep.xml</string>
</dict>
</plist>







|

|

|










52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
	<key>CFBundleDisplayName</key>
	<string>TextSweep</string>
	<key>CFBundleIdentifier</key>
	<string>com.codebykevin.com.textsweep-cbk</string>
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>3.3.0</string>
	<key>CFBundleVersion</key>
	<string>3.3.0</string>
	<key>LSMinimumSystemVersion</key>
	<string>10.13</string>
	<key>LSRequiresCarbon</key>
	<true/>	
	<key>NSSupportsAutomaticTermination</key>
	<string>YES</string>
	<key>NSSupportsSuddenTermination</key>
	<string>YES</string>
  <key>SUFeedURL</key>
	<string>http://www.codebykevin.com/textsweep.xml</string>
</dict>
</plist>

Added TextSweep.sdef.































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
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
43
44
45
46
47
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE dictionary SYSTEM "file://localhost/System/Library/DTDs/sdef.dtd">
<dictionary title="TextSweep Terminology">
	<suite name="Standard Suite" code="reqd" description="Common commands for all applications.">
		<command name="open" code="aevtodoc" description="Open a document.">
			<direct-parameter description="The file(s) to be opened.">
				<type type="file"/>
				<type type="file" list="yes"/>
			</direct-parameter>
		</command>
		<command name="print" code="aevtpdoc" description="Print a document.">
			<direct-parameter description="The file(s) to be printed.">
				<type type="file" list="yes"/>
				<type type="specifier"/>
			</direct-parameter>
		</command>
		<command name="quit" code="aevtquit" description="Quit the application."/>
	</suite>
	<suite name="Wish Suite" code="WIsH" description="Commands for the Wish application.">
		<command name="do script" code="miscdosc" description="Execute a Tcl script.">
			<direct-parameter description="Script to execute">
				<type type="text"/>
				<type type="text"/>
			</direct-parameter>
			<result description="Result" type="text"/>
		</command>
	</suite>
	<suite name="TextSweep Suite" code="????" description="Commands for the TextSweep suite.">
		<command name="search_all_ports" code="CoKvsPrt" description="Search port tree for a specific term. ">
			<direct-parameter description="Port search term." type="text"/>
		</command>
		<command name="list_installed_ports" code="CoKviPrt" description="List all installed ports."/>
		<command name="get_port_info" code="CoKvdPrt" description="Gets information about specific port. ">
			<direct-parameter description="Search term for specific port information." type="text"/>
		</command>
		<command name="list_all_ports" code="CoKvaPrt" description="Lists all ports."/>
		<command name="get_search_term" code="CoKvpTrm" description="Return port search term."/>
		<command name="get_info_term" code="CoKviTrm" description="Get term for port information."/>
		<command name="set_search_term" code="CoKvssTm" description="Sets search term.">
			<direct-parameter description="Search term to be set." type="text"/>
		</command>
		<command name="run_update" code="CoKvrUpd" description="Run MacPorts update."/>
		<command name="dump_ports" code="CoKvdmPt" description="Dump all ports to output file.">
			<direct-parameter description="Path to output file for list of all ports." type="filename"/>
		</command>
	</suite>
</dictionary>

Changes to buildapp.

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
62
63
64
65
66
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>English</string>
	<key>CFBundleExecutable</key>
	<string>TextSweep</string>
	<key>CFBundleGetInfoString</key>
	<string>TextSweep $1 (c) 2017 WordTech Communications LLC</string>
        <key>NSPrincipalClass</key>
        <string>NSApplication</string>
<key>NSHighResolutionCapable</key>
	<true/>
	<key>LSMinimumSystemVersionByArchitecture</key>
	<dict>
	<key>i386</key>
	<string>10.12</string>
	<key>x86_64</key>
	<string>10.12</string>
	</dict>
	<key>LSArchitecturePriority</key>
<array>
<string>x86_64</string>
<string>i386</string>
</array>
	<key>LSApplicationCategoryType</key>
	<string>public.app-category.utilities</string>
	<key>NSHumanReadableCopyright</key>
	<string>(c) 2017 WordTech Communications LLC</string>
	<key>CFBundleIconFile</key>
	<string>textsweep.icns</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleDocumentTypes</key>
	<array>
		<dict>







|







|

|









|







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
62
63
64
65
66
<plist version="1.0">
<dict>
	<key>CFBundleDevelopmentRegion</key>
	<string>English</string>
	<key>CFBundleExecutable</key>
	<string>TextSweep</string>
	<key>CFBundleGetInfoString</key>
	<string>TextSweep $1 (c) 2018 WordTech Communications LLC</string>
        <key>NSPrincipalClass</key>
        <string>NSApplication</string>
<key>NSHighResolutionCapable</key>
	<true/>
	<key>LSMinimumSystemVersionByArchitecture</key>
	<dict>
	<key>i386</key>
	<string>10.13</string>
	<key>x86_64</key>
	<string>10.13</string>
	</dict>
	<key>LSArchitecturePriority</key>
<array>
<string>x86_64</string>
<string>i386</string>
</array>
	<key>LSApplicationCategoryType</key>
	<string>public.app-category.utilities</string>
	<key>NSHumanReadableCopyright</key>
	<string>(c) 2018 WordTech Communications LLC</string>
	<key>CFBundleIconFile</key>
	<string>textsweep.icns</string>
	<key>CFBundleInfoDictionaryVersion</key>
	<string>6.0</string>
	<key>CFBundleDocumentTypes</key>
	<array>
		<dict>
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>$1</string>
	<key>CFBundleVersion</key>
	<string>$1</string>
	<key>LSMinimumSystemVersion</key>
	<string>10.12</string>
	<key>LSRequiresCarbon</key>
	<true/>	
	<key>NSSupportsAutomaticTermination</key>
	<string>YES</string>
	<key>NSSupportsSuddenTermination</key>
	<string>YES</string>
  <key>SUFeedURL</key>







|







85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
	<key>CFBundlePackageType</key>
	<string>APPL</string>
	<key>CFBundleShortVersionString</key>
	<string>$1</string>
	<key>CFBundleVersion</key>
	<string>$1</string>
	<key>LSMinimumSystemVersion</key>
	<string>10.13</string>
	<key>LSRequiresCarbon</key>
	<true/>	
	<key>NSSupportsAutomaticTermination</key>
	<string>YES</string>
	<key>NSSupportsSuddenTermination</key>
	<string>YES</string>
  <key>SUFeedURL</key>
126
127
128
129
130
131
132



133
134
135
136
137
138
139
#copy the supporting libraries
for lib in maclibs/*
do
  echo "Copying $lib library..."
  cp -R -f $lib TextSweep.app/Contents/lib
done




#make website build and appstore build
echo "Making website build..."
ditto --rsrc  --arch x86_64 TextSweep.app build/TextSweep.app
cp -f Info-cbk.plist build/TextSweep.app/Contents/Info.plist


find build/TextSweep.app -type f -name "*.dylib"  -exec codesign --verbose --signature-size 9400 -f -s "Developer ID Application: Kevin Walzer" {} \; 







>
>
>







126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
#copy the supporting libraries
for lib in maclibs/*
do
  echo "Copying $lib library..."
  cp -R -f $lib TextSweep.app/Contents/lib
done


cp -f TextSweep.sdef TextSweep.app/Contents/Resources/TextSweep.sdef

#make website build and appstore build
echo "Making website build..."
ditto --rsrc  --arch x86_64 TextSweep.app build/TextSweep.app
cp -f Info-cbk.plist build/TextSweep.app/Contents/Info.plist


find build/TextSweep.app -type f -name "*.dylib"  -exec codesign --verbose --signature-size 9400 -f -s "Developer ID Application: Kevin Walzer" {} \; 
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165

hdiutil create  -srcfolder build -fs HFS+ -volname TextSweep TextSweep.dmg

codesign  --signature-size 9400 -f -s "Developer ID Application: Kevin Walzer" --verbose=2  TextSweep.dmg

echo "Uploading DMG..."

cp -f TextSweep.dmg /Users/kevin/share/kevin/Sites/codebykevin/updates/TextSweep.dmg



cp -f textsweep-changes.tcl /Users/kevin/share/kevin/Sites/codebykevin/textsweep-changes.tcl
cp -f textsweep-version.tcl /Users/kevin/share/kevin/Sites/codebykevin/textsweep-version.tcl

cd ../







|







154
155
156
157
158
159
160
161
162
163
164
165
166
167
168

hdiutil create  -srcfolder build -fs HFS+ -volname TextSweep TextSweep.dmg

codesign  --signature-size 9400 -f -s "Developer ID Application: Kevin Walzer" --verbose=2  TextSweep.dmg

echo "Uploading DMG..."

#cp -f TextSweep.dmg /Users/kevin/share/kevin/Sites/codebykevin/updates/TextSweep.dmg



cp -f textsweep-changes.tcl /Users/kevin/share/kevin/Sites/codebykevin/textsweep-changes.tcl
cp -f textsweep-version.tcl /Users/kevin/share/kevin/Sites/codebykevin/textsweep-version.tcl

cd ../

Deleted maclibs/Img1.4.2/libjpegtcl8.4.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libpngtcl1.4.12.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtifftcl3.9.4.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimg1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgbmp1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgdted1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimggif1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgico1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgjpeg1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgpcx1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgpixmap1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgpng1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgppm1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgps1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgraw1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgsgi1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgsun1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgtga1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgtiff1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgwindow1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgxbm1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libtkimgxpm1.4.2.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/libzlibtcl1.2.8.dylib.

cannot compute difference between binary files

Deleted maclibs/Img1.4.2/pkgIndex.tcl.

1
2
3
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
package ifneeded zlibtcl 1.2.8     [list load [file join $dir libzlibtcl1.2.8.dylib]]
package ifneeded pngtcl 1.4.12     [list load [file join $dir libpngtcl1.4.12.dylib]]
package ifneeded tifftcl 3.9.4     [list load [file join $dir libtifftcl3.9.4.dylib]]
package ifneeded jpegtcl 8.4     [list load [file join $dir libjpegtcl8.4.dylib]]
# -*- tcl -*- Tcl package index file
# --- --- --- Handcrafted, final generation by configure.
#
# $Id: pkgIndex.tcl.in 209 2009-03-03 17:19:05Z nijtmans $

package ifneeded img::base 1.4.2 [list load [file join $dir libtkimg1.4.2.dylib]]

# Compatibility hack. When asking for the old name of the package
# then load all format handlers and base libraries provided by tkImg.
# Actually we ask only for the format handlers, the required base
# packages will be loaded automatically through the usual package
# mechanism.

# When reading images without specifying it's format (option -format),
# the available formats are tried in reversed order as listed here.
# Therefore file formats with some "magic" identifier, which can be
# recognized safely, should be added at the end of this list.

package ifneeded Img 1.4.2 {
    package require img::window
    package require img::tga
    package require img::ico
    package require img::pcx
    package require img::sgi
    package require img::sun
    package require img::xbm
    package require img::xpm
    package require img::ps
    package require img::jpeg
    package require img::png
    package require img::tiff
    package require img::bmp
    package require img::ppm
    package require img::gif
    package require img::pixmap
    package provide Img 1.4.2
}

package ifneeded img::bmp 1.4.2     [list load [file join $dir libtkimgbmp1.4.2.dylib]]
package ifneeded img::gif 1.4.2     [list load [file join $dir libtkimggif1.4.2.dylib]]
package ifneeded img::ico 1.4.2     [list load [file join $dir libtkimgico1.4.2.dylib]]
package ifneeded img::jpeg 1.4.2     [list load [file join $dir libtkimgjpeg1.4.2.dylib]]
package ifneeded img::pcx 1.4.2     [list load [file join $dir libtkimgpcx1.4.2.dylib]]
package ifneeded img::pixmap 1.4.2     [list load [file join $dir libtkimgpixmap1.4.2.dylib]]
package ifneeded img::png 1.4.2     [list load [file join $dir libtkimgpng1.4.2.dylib]]
package ifneeded img::ppm 1.4.2     [list load [file join $dir libtkimgppm1.4.2.dylib]]
package ifneeded img::ps 1.4.2     [list load [file join $dir libtkimgps1.4.2.dylib]]
package ifneeded img::sgi 1.4.2     [list load [file join $dir libtkimgsgi1.4.2.dylib]]
package ifneeded img::sun 1.4.2     [list load [file join $dir libtkimgsun1.4.2.dylib]]
package ifneeded img::tga 1.4.2     [list load [file join $dir libtkimgtga1.4.2.dylib]]
package ifneeded img::tiff 1.4.2     [list load [file join $dir libtkimgtiff1.4.2.dylib]]
package ifneeded img::window 1.4.2     [list load [file join $dir libtkimgwindow1.4.2.dylib]]
package ifneeded img::xbm 1.4.2     [list load [file join $dir libtkimgxbm1.4.2.dylib]]
package ifneeded img::xpm 1.4.2     [list load [file join $dir libtkimgxpm1.4.2.dylib]]
package ifneeded img::dted 1.4.2     [list load [file join $dir libtkimgdted1.4.2.dylib]]
package ifneeded img::raw 1.4.2     [list load [file join $dir libtkimgraw1.4.2.dylib]]
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
























































































































Deleted maclibs/Img1.4.2/regproc/pkgIndex.tcl.

1
2
3
4
5
6
7
8
9
10
11
# Tcl package index file, version 1.1
# This file is generated by the "pkg_mkIndex" command
# and sourced either when an application starts up or
# by a "package unknown" script.  It invokes the
# "package ifneeded" command to set up package-related
# information so that packages will be loaded automatically
# in response to "package require" commands.  When this
# script is sourced, the variable $dir must contain the
# full path name of this file's directory.

package ifneeded regproc 1.4 [list source [file join $dir regproc.tcl]]
<
<
<
<
<
<
<
<
<
<
<






















Deleted maclibs/Img1.4.2/regproc/regproc.tcl.

1
2
3
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
#regproc.tcl  routines to register serial numbers

#Copyright 2015 WordTech Communications LLC

#MIT license

package provide regproc 1.4
package require http
package require xplat

image create photo _unlock -data  {
    R0lGODlhGAAgAIABAAAAAP///yH+GkNyZWF0ZWQgd2l0aCBHSU1QIG9uIGEgTWFj
    ACH5BAEKAAEALAAAAAAYACAAAAJRjI+gq+jO4npQWmqsBvQenzBYVE1YQH7imWbm
    ib5xA89cPcp4uPX+DwwKh7SdbWXUGF2S5VHn6oBURWrL+lBmb6UrTpucfsE14u85
    tKZ5wkMBADs=
}

image create photo _check -data {
    R0lGODlhIAAaAIABAAQHB////yH+GkNyZWF0ZWQgd2l0aCBHSU1QIG9uIGEgTWFj
    ACH5BAEKAAEALAAAAAAgABoAAAJMjI+pCeuvgIR0yVtzuFxDDnoWGIoHWZobikUV
    2zLTA89yfLNjetY7iag1Ir4VzCFMfpI6ChOYeeJeTxVTZRBie6htEOrl2sJcsmVb
    AAA7
}


namespace eval regproc {

    if {![info exists library]} {
	variable library [file dirname [info script]]
    }
    variable datadir
    variable expired
    set expired 0


    #set the 30-day clock for application/version
    proc setClock {} {
	variable datadir 
	variable appname
	variable appversion
	variable appstore
	puts "datadir is $datadir"

	set launchTime [clock seconds]
	set saveTime [open $datadir/$appname$appversion.dat w]
	puts $saveTime $launchTime
	close $saveTime
    }

    #read the time set
    proc readClock {} {
	variable datadir 
	variable appstatus 
	variable expstatus 
	variable appname
	variable appversion
	variable appstore
	variable expired

	set curTime [clock seconds]
	set oldTime [read [open $datadir/$appname$appversion.dat r]]
	set expDate [clock scan "30 days" -base $oldTime]
	if {$curTime < $expDate } {
	    set expired 0
	    regproc::makePitch	
	} else {
	    set expired 1
	    regproc::expiredPitch
	}
    }
    
    #check to see if a time has been set
    proc checkClock {} {
	variable datadir 
	variable appname
	variable appversion
	variable appstore
	variable expired

	if {[file exists $datadir/.$appname$appversion.rc]} {
	    
	    catch "file rename $datadir/.$appname$appversion.rc $datadir/$appname$appversion.dat"
	    regproc::readClock
	    return
	}

	if  {![file exists  $datadir/$appname$appversion.dat]} {
	    regproc::setClock 
	    regproc::readClock
	} else {
	    regproc::readClock
	}
    }

    #dialog before demo has expired
    proc makePitch {} {
	variable version 
	variable appname
	variable appstore

	toplevel .purchase
	wm title .purchase "Purchase $appname"
	wm resizable .purchase 0 0

	wm withdraw .purchase
	wm transient .purchase .

	wm protocol .purchase WM_DELETE_WINDOW {}

	ttk::frame .purchase.top -padding 10
	pack .purchase.top -side top -fill both -expand yes
	ttk::label .purchase.top.label -text "You are currently using a demo of $appname. This version will give you the chance to try \n$appname free of charge for 30 days. Would you like to buy $appname now?" -image _unlock -compound left -anchor n 

	pack .purchase.top.label  -side top -fill x -expand yes

	ttk::frame .purchase.bottom -padding 5
	pack .purchase.bottom -side bottom -fill both -expand yes

	ttk::frame .purchase.bottom.upper
	pack .purchase.bottom.upper -side top -fill both -expand no


	ttk::frame .purchase.bottom.lower -padding 5
	pack .purchase.bottom.lower -side bottom -fill both -expand no

	ttk::button .purchase.bottom.lower.install -text "Purchase" -default active -command "xplat::launch  http://www.codebykevin.com/$appname.html; regproc::getReg; destroy .purchase"
	ttk::button .purchase.bottom.lower.cancel -text "Cancel" -command " destroy .purchase; raise ."
	pack  .purchase.bottom.lower.install .purchase.bottom.lower.cancel  -side right -fill both -expand no
	
	::tk::PlaceWindow .purchase widget .

	wm deiconify .purchase
	focus .purchase.bottom.lower.install

	if {[tk windowingsystem] eq "aqua"} {
	    after idle [list after 0 wm attributes .purchase -notify 1]

	    bind all <FocusIn> [list add [list  wm attributes . -notify 0]]
	}

    }

    #dialog after demo has expired
    proc expiredPitch {} {
	variable version 
	variable appname
	variable appstore
	variable expired

	toplevel .expired
	wm title .expired "Purchase $appname"
	wm resizable .expired 0 0

	wm withdraw .expired
	wm transient .expired .

	wm protocol .expired WM_DELETE_WINDOW {}

	ttk::frame .expired.top -padding 10
	pack .expired.top -side top -fill both -expand yes
	ttk::label .expired.top.label -text "This demo of $appname is now expired. Would you like to buy $appname now?" -image _unlock -compound left -anchor n 

	pack .expired.top.label  -side top -fill x -expand yes

	ttk::frame .expired.bottom -padding 5
	pack .expired.bottom -side bottom -fill both -expand yes

	ttk::frame .expired.bottom.upper
	pack .expired.bottom.upper -side top -fill both -expand no


	ttk::frame .expired.bottom.lower -padding 5
	pack .expired.bottom.lower -side bottom -fill both -expand no

	ttk::button .expired.bottom.lower.install -text "Purchase" -default active -command "xplat::launch http://www.codebykevin.com/$appname.html; regproc::getReg; destroy .expired"
	ttk::button .expired.bottom.lower.cancel -text "Cancel" -command " destroy .expired; exit"
	pack  .expired.bottom.lower.install .expired.bottom.lower.cancel  -side right -fill both -expand no
	
	::tk::PlaceWindow .expired widget .

	wm deiconify .expired
	focus .expired.bottom.lower.install

	if {[tk windowingsystem] eq "aqua"} {
	    after idle [list after 0 wm attributes .expired -notify 1]

	    bind all <FocusIn> [list add [list  wm attributes . -notify 0]]
	}
    }

    #check for license, validate if found, set demo pitch if not found
    proc readLic {application version} {

	variable serial 
	variable datadir
	variable appname
	variable appversion
	variable appstore

	set appname $application
	set appversion $version

	set datadir [xplat::appconfig $appname]

	if {[file exists $datadir/.lic] } {
	    file rename $datadir/.lic $datadir/lic.dat
	}

	if {[file exists $datadir/lic.dat]} {
	    
	    set licnum [open $datadir/lic.dat r]
	    set serial [read $licnum]
	    close $licnum
	    return
	} else {
	    set serial "Demo"
	    regproc::checkClock
	    
	}
    }


    #write license to file
    proc setLic {} {
	variable serial
	variable serialbase
	variable datadir
	variable appname
	variable regwindow
	variable appstore

	if {$serial == ""} {
	    tk_messageBox -icon warning -title "Incorrect Serial Number" -message "Incorrect Serial Number" -detail "Incorrect serial number. The application will exit now." -parent .number
	    exit
	}

	set count 20000

	for {set i 1} {$i < $count} {incr i 1} {

	    lappend serialbase [string toupper $appname]-[expr $i * 5]-[expr $i/11]-[expr $i - 1]-[string toupper [string trim [string range $appname 0 1]]]
	}
	

	set output [lsearch  -inline $serialbase $serial]
	puts $serial
	puts $output
	
	if {$output >= 0} {
	    cd $datadir
	    set lic [open $datadir/lic.dat w]
	    puts $lic "$serial"
	    close $lic
	    tk_messageBox -icon info -title "Thank You" -message "Thank You" -detail "Thank you for registering $appname." -parent .number
	    destroy .number
	    #display window that was hidden
	    catch {wm deiconify .}

	} else {
	    if {$expired == 1} {
		tk_messageBox -icon warning -title "Incorrect Serial Number" -message "Incorrect Serial Number" -detail "Incorrect serial number. The application will exit now." -parent .number
		exit
	    }
	    
	    tk_messageBox -icon warning -title "Incorrect Serial Number" -message "Incorrect Serial Number" -detail "Incorrect serial number. Please try again." -parent .number
	    regproc::getReg
	}
    }



    #generate license numbers
    proc genList {application} {

	variable appname
	variable regwindow
	variable appstore

	set appname $application

	set count 20000

	for {set i 1} {$i < $count} {incr i 1} {

	    lappend serialbase [string toupper $appname]-[expr $i * 5]-[expr $i/11]-[expr $i - 1]-[string toupper [string trim [string range $appname 0 1]]]
	}


	if [file exists  $::env(HOME)/[list $appname]-list] {
	    file delete  $::env(HOME)/[list $appname]-list
	}

	foreach item $serialbase {
	    split $item\n
	    set keylist [open $::env(HOME)/[list $appname]-list a]
	    puts $keylist $item
	    close $keylist
	}
    }

    #dialog to input registration number from demo prompt
    proc getReg {} {


	variable serial
	variable regwindow
	variable appstore
	variable expired
	variable appname

	toplevel .number
	wm title .number "License"
	wm resizable .number 0 0

	wm withdraw .number
	wm transient .number .

	wm protocol .number WM_DELETE_WINDOW {}

	ttk::frame .number.top -padding 10
	pack .number.top -side top -fill both -expand yes

	
	ttk::label .number.top.label -text "Please enter your serial number for $appname\nin the field below:" -image _check -compound left -anchor n -padding 10
	pack .number.top.label -side top -fill both -expand yes

	ttk::entry .number.top.entry -textvariable [namespace current]::serial
	pack .number.top.entry -side bottom -fill both -expand yes

	ttk::frame .number.bottom -padding 5
	pack .number.bottom -side bottom -fill both -expand yes

	ttk::frame .number.bottom.upper
	pack .number.bottom.upper -side top -fill both -expand no


	ttk::frame .number.bottom.lower -padding 5
	pack .number.bottom.lower -side bottom -fill both -expand no

	bind .number <Return> {regproc::setLic; destroy .number; raise .}
	ttk::button .number.bottom.lower.install -text "Register" -default active -command {regproc::setLic; destroy .number; raise .}
	ttk::button .number.bottom.lower.cancel -text "Cancel" -command "regproc::exitIfExpired; destroy .number; raise ."
	pack  .number.bottom.lower.install .number.bottom.lower.cancel  -side right -fill both -expand no
	
	::tk::PlaceWindow .number widget .

	wm deiconify .number
	focus .number.bottom.lower.install
	if {[tk windowingsystem] eq "aqua"} {
	    after idle [list after 0 wm attributes .number -notify 1]
	    bind all <FocusIn>  [list  wm attributes . -notify 0]
	}
    }

    proc exitIfExpired {} {

	variable expired
	if {$expired == 1} {
	    exit
	} 

    }

    namespace export *
}

<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<




























































































































































































































































































































































































































































































































































































































































































































































Deleted maclibs/fullscreen1.2/fullscreen.tcl.

1
2
3
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#fullscreen: provides Cocoa-native fullscreen windows for Tk apps on OS X in a manner consistent with wm attributes api's. 


namespace eval fullscreen {

    if {![info exists library]} {
	variable library [file dirname [info script]]
    }

    load [file join $library libfullscreen1.2.dylib]

    image create photo _resize -data {

	R0lGODlhEAAQAIABALm5uf///yH5BAEKAAEALAAAAAAQABAAAAIhjI+gim3LXIMy
	0RpglBfghU1h5o3kNnkXp4Wtu1ZaaZoFADs=

    }

    
    proc fullscreen {windowname} {

	variable w
	set w $windowname

	fullscreen::addfullscreenbutton $w
    }

    proc togglefullscreen {} {

	variable w

	if {[wm attributes $w -fullscreen] == 1} {
	    fullscreen::restorewindow
	} else {
	    fullscreen::makefullscreen
	}
	fullscreen::fullscreen $w
    }

    proc makefullscreen {} {

	variable originalsize
	variable title
	variable w
	
	set originalsize [wm geometry $w]
	set title [wm title $w]
	
	wm withdraw $w
	wm attributes $w -fullscreen 1
	
	set m [$w cget -menu]
	
	menu $m._resize
	$m add cascade -image _resize -menu $m._resize
	$m._resize add command -label "Restore Normal Window" -command fullscreen::restorewindow
	wm deiconify $w
	
    }

    proc restorewindow {} {

	variable originalsize
	variable w
	variable title

	set m [$w cget -menu]
	$m delete end
	destroy $m._resize

	wm attributes $w  -fullscreen 0

	wm geometry . $originalsize
	wm title $w $title
	
    }

    bind all <<ToggleFullScreen>> fullscreen::togglefullscreen
    namespace export *

}






<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<














































































































































































Deleted maclibs/fullscreen1.2/libfullscreen1.2.dylib.

cannot compute difference between binary files

Deleted maclibs/fullscreen1.2/pkgIndex.tcl.

1
2
3
4
5
6
7
#
# Tcl package index file
#
package ifneeded fullscreen 1.2 "
    package require Tk 8.5-
    if {\"AppKit\" ni \[winfo server .\]} {error {TkAqua Cocoa required}}
        source [list [file join $dir fullscreen.tcl]]"
<
<
<
<
<
<
<














Added scriptlibs/textsweep/images/images.tcl.



































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































































>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
1
2
3
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849

image create photo icon-update -data {

R0lGODlhQABAAOf/AFgwaF80ZWM9bWU/ZG5KXm9KdndRG3RUHHtUFnRQVo1SAIFU
EX5WEYVXCoxXAohZAo9ZAI5ZBXxVgXxdXYBeT5loGIhqOIlijIdsRp5rEIx1AIFs
h4VxWpZul6l3KX1+e4B9hLF6IX+BfpqFCaV2n8J9DKWBQ52GMJqFRp57oJSEaJmE
WrKCMYWHhMaAEsWFFamPBpaHk8SFIK5/qIuNisqKJreUCciOMbWYDbGJr5OVktCP
K8OSQ82SK7qcALqVULOdHqycQrGdK7SXYM6UNrihBbqPsr6gCJqcmsChANKXOdGX
QMWaTM+eIb6lENabPbuXt82iFsKoAMKkKKGjoL2qFdOfRcWrB9qfR7+sJcKqNMSo
RtaiT8Kdvr6qS86kXbywJ86tEbSolMqvEr2ogKmrqNumTM2yAL+yNcqxLcKlwt2o
Vcy2BMm1HdypXNGrb7+0U8CzZK+xrsCydcO4SuOuW9G7EdS9ALS1st6xYt2xaeWx
Y9K9K8yvyNfAAsW4lbe5tr25rdnCCN2/HeO2bbq8udvEDt7GANvEIei5ar2/vNnE
QOe7eM3CgtjFTOHIGN3HMePKAtS60dzHOsDCv9bFY+PGM9DFeN/JJ+DNBNHCoebN
C8PFwuzBhOPQDtvMXtXC1sfJxuXOPurGhtzMeefTFebRMeTQS+fTJunVGdzG1uzJ
j+XRVdnLtszOy+bTXerXK+fWP+/Mku3VQOzZLtDSz+/XS+rXYe7bMOnXaOraTOrY
ce/cPODYk+7aVujZeNTW0t3Wut3ZpuTai+fahvLfNfDeSOzdX/LfP+veZtfZ1uzc
e/Dedu3gcPXiTNrc2eLcw+3iePfkTvPjZfHja9ze2/TkXuTfx/flV97g3fTjgu/l
gvLmdfnnWeLh5+Hj3/XmivvqZOPl4vXqf/fplOXn5PbsiPXtj/7ub+fp5v3wYP7x
Wf3vdujq5/3wf/rwjOrs6fnxk/3yh+vu6u3v7P/znfv1ne/x7v/0pPHz8PP18vT3
8/b49Pf59vr8+f///yH+EUNyZWF0ZWQgd2l0aCBHSU1QACH5BAEKAP8ALAAAAABA
AEAAAAj+AP8JHEiwoMGDCBMqXMiwoYiHEB82nEhxoohn1bJ92yiiosePBUVUq1UL
GDBxHUGqrCgim0lgytKlXElT4cNvJp89k1lT5UyEIsrgxJitnUSbPUMeBSquHNFv
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
HPv4x9oNCAA7


}
image create photo icon-main -data {

R0lGODlhAAIAAuf/AFgwaF80ZWM9bWU/ZG5KXm9KdndRG3RUHHtUFnRQVo1SAIFU
EX5WEYVXCoxXAohZAo9ZAI5ZBXxVgXxdXYBeT5loGIhqOIlijIdsRp5rEIx1AIFs
h4VxWpZul6l3KX1+e4B9hLF6IX+BfpqFCaV2n8J9DKWBQ52GMJqFRp57oJSEaJmE
WrKCMYWHhMaAEsWFFamPBpaHk8SFIK5/qIuNisqKJreUCciOMbWYDbGJr5OVktCP
K8OSQ82SK7qcALqVULOdHqycQrGdK7SXYM6UNrihBbqPsr6gCJqcmsChANKXOdGX
QMWaTM+eIb6lENabPbuXt82iFsKoAMKkKKGjoL2qFdOfRcWrB9qfR7+sJcKqNMSo
RtaiT8Kdvr6qS86kXbywJ86tEbSolMqvEr2ogKmrqNumTM2yAL+yNcqxLcKlwt2o
Vcy2BMm1HdypXNGrb7+0U8CzZK+xrsCydcO4SuOuW9G7EdS9ALS1st6xYt2xaeWx
Y9K9K8yvyNfAAsW4lbe5tr25rdnCCN2/HeO2bbq8udvEDt7GANvEIei5ar2/vNnE
QOe7eM3CgtjFTOHIGN3HMePKAtS60dzHOsDCv9bFY+PGM9DFeN/JJ+DNBNHCoebN
C8PFwuzBhOPQDtvMXtXC1sfJxuXOPurGhtzMeefTFebRMeTQS+fTJunVGdzG1uzJ
j+XRVdnLtszOy+bTXerXK+fWP+/Mku3VQOzZLtDSz+/XS+rXYe7bMOnXaOraTOrY
ce/cPODYk+7aVujZeNTW0t3Wut3ZpuTai+fahvLfNfDeSOzdX/LfP+veZtfZ1uzc
e/Dedu3gcPXiTNrc2eLcw+3iePfkTvPjZfHja9ze2/TkXuTfx/flV97g3fTjgu/l
gvLmdfnnWeLh5+Hj3/XmivvqZOPl4vXqf/fplOXn5PbsiPXtj/7ub+fp5v3wYP7x
Wf3vdujq5/3wf/rwjOrs6fnxk/3yh+vu6u3v7P/znfv1ne/x7v/0pPHz8PP18vT3
8/b49Pf59vr8+f///yH+EUNyZWF0ZWQgd2l0aCBHSU1QACH5BAEKAP8ALAAAAAAA
AgACAAj+AP8JHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmy
pMmTKFOqXMmypcuXMGPKnEmzps2bOHPq3Mmzp8+fQIMKHSqiqNGjSJMqPTq0qdOn
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
MRvzMSNzMivzMjNzMzvzM0NzNEvzNFMzUQQEADs=


}

Changes to scriptlibs/textsweep/pkgIndex.tcl.

1
2
3

  package ifneeded textsweep 3.2 [list source [file join $dir textsweep.tcl]]


|

1
2
3

  package ifneeded textsweep 4.0 [list source [file join $dir textsweep.tcl]]

Changes to scriptlibs/textsweep/textsweep-main.tcl.

1
2
3
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
# TextSweep: batch search-replace tool 

#  Copyright (C) 2017 WordTech Communications LLC

#MIT license

#let's get started

#initialize package requirements
package require tablelist_tile
package require fileutil 
package require Img
package require tkdnd
package require regproc
package require machelp
package require softwareupdate
package require appname
package require xplat
package require BWidget



if {[tk windowingsystem] eq "aqua"} {
    package require fullscreen
    package require cocoaprint



    package require windowlist
}


#initialize variables
global folder
global searchvar
global patternvar
global replacevar
global searchterm


|








<









>

|
|
>
>
>
|

>







1
2
3
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
# TextSweep: batch search-replace tool 

#  Copyright (C) 2018 WordTech Communications LLC

#MIT license

#let's get started

#initialize package requirements
package require tablelist_tile
package require fileutil 

package require tkdnd
package require regproc
package require machelp
package require softwareupdate
package require appname
package require xplat
package require BWidget



if {[tk windowingsystem] eq "aqua"} {
    package require cocoaprint
    package require aem
}

if {[tk windowingsystem] eq "win32"} {
    package require dde
}


#initialize variables
global folder
global searchvar
global patternvar
global replacevar
global searchterm
53
54
55
56
57
58
59
60
61
62
63

64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#make images for buttons et. al from files
proc makeImage {} {

    global  runsearch 
    global folder_documents 
    global edit_undo
    
    
    image create photo logo -data {
	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
	

    }
    
    image create photo folder -data {
	iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAMAAADzapwJAAAADFBMVEUEBwcEBwcEBwcEBwcNzGmPAAAAAXRSTlMAQObYZgAAAC1JREFUeAFjYEYABgQgXRhCowAyhNEAfmFMQFiYsJX0F6aa5xmxiTIygMQxRQEtWAMvBVlMnAAAAABJRU5ErkJggg==
    }
    
    
    image create photo glass -data {
	iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AcSAg8sJGRWZAAAAXhJREFUOMutlL9LQlEUxz+WGRHllGNEPyAUWnLWsVYhXNpd+ldC6B/QPyDnoMXNtbnFIRAarLAn+bDU13IuHC/vPm/agQuXy/d93veec+4Bv9gGKkAbGAORrAHQBPLAOn+MAtBVMNdqARlfaEk+minAJ/AOvAEjC973gWeAnvpoCNSAfWAX2AKKQN36eWtRWhoK+grkErRXlvO8S7hjuah6pK2uwE2X6BKYiujFsx5FlfPBmkO0B6Rkf+8JfgZC2Wdd4EjtNzzBcwVzgccKfuIJzgJp2X+7RIfAjyrGkQe4pvTtpIcxUcLOgt7MSZ8bfcUFDWOebMfhvCp9btqzK7NlLspW/36ptjPrAbgDbqUVbQOFOKh++wFwLfCk4WNM9OS2scPGrA/gQODmbCIFnQpspm7TsIdPWqCPIkgJ9AZ4Uk97DFyIq3NgU7R9yf0wrliB5fZMxqI+K7FEnIpLe+5GkvMyK8SxoyArQTXcOA+XvX5SWoL/gP4Cdj2n/+OJ36AAAAAASUVORK5CYII=
    }
    
    image create photo reverse -data {
	iVBORw0KGgoAAAANSUhEUgAAABIAAAAVCAMAAAB8FU7dAAAAJFBMVEUAAAAEBwcEBwcEBwcEBwcEBwcEBwcEBwcEBwcEBwcEBwcEBwciT4YkAAAAC3RSTlMADy8/T19vn7/P72K50kgAAABxSURBVHgBZZBdDgQhCINl/VHs/e+7aUimMNMX4UvVQkvabq1qAy9mjsRsOSixcSFtkgkpXIPVmZ3eIMZqlh8XSc3lwHlyxCFTKFD/op+6DqBcjIzpeeoAnkOEaaWoQa5poD4Pq1HHll/LuaPVFfoydn8C6Qbq4n8uEwAAAABJRU5ErkJggg==
    }

    softwareupdate::setIcon logo
    

}

#display user help
if {[tk windowingsystem] eq "aqua"} {
    proc tk::mac::ShowHelp {} {
	machelp::userhelp
    }
}

#"about application" command
proc tkAboutDialog {} {
    aboutWindow
}

proc aboutWindow {} {

   tk_messageBox -parent . -icon info -title "About TextSweep" -message "TextSweep: Search and Replace Tool" -detail "Version 3.2\n(c)2017 WordTech Communications LLC"


}

#check file list to ensure existence
proc checkfilelist {} {








|
<
<
|
>
|














|


















|







57
58
59
60
61
62
63
64


65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#make images for buttons et. al from files
proc makeImage {} {

    global  runsearch 
    global folder_documents 
    global edit_undo
    
    set imagedir [file join [file dirname [info script]] images]



    source $imagedir/images.tcl
   
    
    image create photo folder -data {
	iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAMAAADzapwJAAAADFBMVEUEBwcEBwcEBwcEBwcNzGmPAAAAAXRSTlMAQObYZgAAAC1JREFUeAFjYEYABgQgXRhCowAyhNEAfmFMQFiYsJX0F6aa5xmxiTIygMQxRQEtWAMvBVlMnAAAAABJRU5ErkJggg==
    }
    
    
    image create photo glass -data {
	iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4AcSAg8sJGRWZAAAAXhJREFUOMutlL9LQlEUxz+WGRHllGNEPyAUWnLWsVYhXNpd+ldC6B/QPyDnoMXNtbnFIRAarLAn+bDU13IuHC/vPm/agQuXy/d93veec+4Bv9gGKkAbGAORrAHQBPLAOn+MAtBVMNdqARlfaEk+minAJ/AOvAEjC973gWeAnvpoCNSAfWAX2AKKQN36eWtRWhoK+grkErRXlvO8S7hjuah6pK2uwE2X6BKYiujFsx5FlfPBmkO0B6Rkf+8JfgZC2Wdd4EjtNzzBcwVzgccKfuIJzgJp2X+7RIfAjyrGkQe4pvTtpIcxUcLOgt7MSZ8bfcUFDWOebMfhvCp9btqzK7NlLspW/36ptjPrAbgDbqUVbQOFOKh++wFwLfCk4WNM9OS2scPGrA/gQODmbCIFnQpspm7TsIdPWqCPIkgJ9AZ4Uk97DFyIq3NgU7R9yf0wrliB5fZMxqI+K7FEnIpLe+5GkvMyK8SxoyArQTXcOA+XvX5SWoL/gP4Cdj2n/+OJ36AAAAAASUVORK5CYII=
    }
    
    image create photo reverse -data {
	iVBORw0KGgoAAAANSUhEUgAAABIAAAAVCAMAAAB8FU7dAAAAJFBMVEUAAAAEBwcEBwcEBwcEBwcEBwcEBwcEBwcEBwcEBwcEBwcEBwciT4YkAAAAC3RSTlMADy8/T19vn7/P72K50kgAAABxSURBVHgBZZBdDgQhCINl/VHs/e+7aUimMNMX4UvVQkvabq1qAy9mjsRsOSixcSFtkgkpXIPVmZ3eIMZqlh8XSc3lwHlyxCFTKFD/op+6DqBcjIzpeeoAnkOEaaWoQa5poD4Pq1HHll/LuaPVFfoydn8C6Qbq4n8uEwAAAABJRU5ErkJggg==
    }

    softwareupdate::setIcon icon-update
    

}

#display user help
if {[tk windowingsystem] eq "aqua"} {
    proc tk::mac::ShowHelp {} {
	machelp::userhelp
    }
}

#"about application" command
proc tkAboutDialog {} {
    aboutWindow
}

proc aboutWindow {} {

   tk_messageBox -parent . -icon info -title "About TextSweep" -message "TextSweep: Search and Replace Tool" -detail "Version 4.0\n(c)2018 WordTech Communications LLC"


}

#check file list to ensure existence
proc checkfilelist {} {

116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154

    bgerror "Please enter text into the appropriate entry field to run this operation."
    return

}




#draw the GUI
proc drawGUI {} {

    global folder
    global searchvar
    global patternvar
    global replacevar
    global searchterm
    global appname
    global cachedir
    global datadir

    wm title . "TextSweep"
    
    wm iconphoto . -default logo

    . configure -height 700 -width 700
    
    
    if {[tk windowingsystem] eq "aqua"} {
	::fullscreen::fullscreen .
    }

    set patternvar *


    if {[tk windowingsystem] eq "aqua"} {
	bind . <[xplat::controlkey]-W> {wm state .  withdrawn}
	bind . <[xplat::controlkey]-w> {wm state .  withdrawn}
    }







<
<














|



|
<
<
<
<







119
120
121
122
123
124
125


126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144




145
146
147
148
149
150
151

    bgerror "Please enter text into the appropriate entry field to run this operation."
    return

}




#draw the GUI
proc drawGUI {} {

    global folder
    global searchvar
    global patternvar
    global replacevar
    global searchterm
    global appname
    global cachedir
    global datadir

    wm title . "TextSweep"
    
    wm iconphoto . -default icon-main

    . configure -height 700 -width 700
    
 




    set patternvar *


    if {[tk windowingsystem] eq "aqua"} {
	bind . <[xplat::controlkey]-W> {wm state .  withdrawn}
	bind . <[xplat::controlkey]-w> {wm state .  withdrawn}
    }
307
308
309
310
311
312
313


314
315
316
317
318
319
320
    
    bind all <[xplat::controlkey]-Q> exit
    bind all <[xplat::controlkey]-q> exit
    bind all <[xplat::controlkey]-Z> batchUndo
    bind all <[xplat::controlkey]-z> batchUndo
    
    focus -force .f.foldersearch.foldervar


}



#set search directory
proc setDir {} {








>
>







304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
    
    bind all <[xplat::controlkey]-Q> exit
    bind all <[xplat::controlkey]-q> exit
    bind all <[xplat::controlkey]-Z> batchUndo
    bind all <[xplat::controlkey]-z> batchUndo
    
    focus -force .f.foldersearch.foldervar

    wm iconphoto . -default icon-main
}



#set search directory
proc setDir {} {

595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
#initialize the app
proc startUp {} {
    global appname
    global appversion
    global datadir
    global cachedir
    
    appname::setAppName TextSweep 3.2
    
    set datadir [xplat::appconfig TextSweep]


    makeImage
    softwareupdate::setVersion $appname::name $appname::version
    machelp::setAppName $appname::name $appname::version







|







594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
#initialize the app
proc startUp {} {
    global appname
    global appversion
    global datadir
    global cachedir
    
    appname::setAppName TextSweep 4.0
    
    set datadir [xplat::appconfig TextSweep]


    makeImage
    softwareupdate::setVersion $appname::name $appname::version
    machelp::setAppName $appname::name $appname::version

Changes to scriptlibs/textsweep/textsweep.tcl.

1
2
3
4
package provide textsweep 3.2

source [file join [file dirname [info script]] textsweep-main.tcl]

|



1
2
3
4
package provide textsweep 4.0

source [file join [file dirname [info script]] textsweep-main.tcl]