summaryrefslogtreecommitdiffstats
path: root/Tools/msi/tcltk
diff options
context:
space:
mode:
authorSteve Dower <steve.dower@microsoft.com>2015-03-25 04:25:16 (GMT)
committerSteve Dower <steve.dower@microsoft.com>2015-03-25 04:25:16 (GMT)
commit102f72cf1a414f507951cf4988d51cffb8f4e2b4 (patch)
tree4836b089a9dd96f91044ae82d76030b95e39c287 /Tools/msi/tcltk
parentfef9c1b368ce0a59772378798d203efc5f836413 (diff)
downloadcpython-102f72cf1a414f507951cf4988d51cffb8f4e2b4.zip
cpython-102f72cf1a414f507951cf4988d51cffb8f4e2b4.tar.gz
cpython-102f72cf1a414f507951cf4988d51cffb8f4e2b4.tar.bz2
Adds pydoc shortcut, Edit with IDLE menu, moves redist folder into externals and fixes test script.
Diffstat (limited to 'Tools/msi/tcltk')
-rw-r--r--Tools/msi/tcltk/tcltk.wxs65
-rw-r--r--Tools/msi/tcltk/tcltk_en-US.wxl_template4
2 files changed, 65 insertions, 4 deletions
diff --git a/Tools/msi/tcltk/tcltk.wxs b/Tools/msi/tcltk/tcltk.wxs
index 819fccb..4a0d80f 100644
--- a/Tools/msi/tcltk/tcltk.wxs
+++ b/Tools/msi/tcltk/tcltk.wxs
@@ -8,18 +8,24 @@
<PropertyRef Id="REGISTRYKEY" />
<Property Id="PYTHON_EXE" Secure="yes">
- <ComponentSearch Id="PythonExe" Guid="$(var.PythonwExeComponentGuid)">
+ <ComponentSearch Id="PythonExe" Guid="$(var.PythonExeComponentGuid)">
+ <FileSearch Name="python.exe" />
+ </ComponentSearch>
+ </Property>
+
+ <Property Id="PYTHONW_EXE" Secure="yes">
+ <ComponentSearch Id="PythonwExe" Guid="$(var.PythonwExeComponentGuid)">
<FileSearch Name="pythonw.exe" />
</ComponentSearch>
</Property>
- <Condition Message="!(loc.NoPython)">PYTHON_EXE</Condition>
+ <Condition Message="!(loc.NoPython)">PYTHON_EXE and PYTHONW_EXE</Condition>
<Feature Id="DefaultFeature" AllowAdvertise="no" Title="!(loc.Title)" Description="!(loc.Description)">
<ComponentGroupRef Id="tkinter_extension" />
<ComponentGroupRef Id="tcltk_dlls" />
<ComponentGroupRef Id="tcltk_lib" />
- <ComponentGroupRef Id="tkinter_lib" />
+ <ComponentGroupRef Id="tkinter_lib" Primary="yes" />
<Component Id="idle_shortcut" Directory="MenuDir">
<RegistryValue KeyPath="yes" Root="HKMU" Key="[REGISTRYKEY]\Idle" Type="string" Value="[#Lib_idlelib_idle.pyw]" />
@@ -29,11 +35,62 @@
Directory="MenuDir"
Name="!(loc.ShortcutName)"
Description="!(loc.ShortcutDescription)"
- Target="[PYTHON_EXE]"
+ Target="[PYTHONW_EXE]"
Arguments='"[#Lib_idlelib_idle.pyw]"'
Icon="idle.exe">
<Icon Id="idle.exe" SourceFile="!(bindpath.src)Lib\idlelib\Icons\idle.ico" />
</Shortcut>
+ <Shortcut Id="pydoc.py"
+ Target="[PYTHON_EXE]"
+ Arguments='-m pydoc -b'
+ Name="!(loc.PyDocShortcutName)"
+ Description="!(loc.PyDocShortcutDescription)"
+ Icon="idle.exe" />
+ </Component>
+ </Feature>
+ <Feature Id="AssociateFiles" AllowAdvertise="no" Title="!(loc.Title)" Description="!(loc.Description)">
+ <ComponentGroupRef Id="tkinter_lib" />
+
+ <!-- We fix the guid of the Subcommands key so that it is correctly reference counted -->
+ <Component Id="assoc_subcommands" Directory="InstallDirectory" Guid="{57D47B4C-96E6-40A0-A958-57083D74423F}">
+ <Condition>VersionNT > 600</Condition>
+ <RegistryValue Root="HKCR" Key="$(var.TestPrefix)Python.File\Shell\editwithidle" Name="MUIVerb" Value="!(loc.EditMenu)" Type="string" KeyPath="yes" />
+ <RegistryValue Root="HKCR" Key="$(var.TestPrefix)Python.File\Shell\editwithidle" Name="Subcommands" Value="" Type="string" KeyPath="no" />
+ </Component>
+ <Component Id="assoc_subcommands_nocon" Directory="InstallDirectory" Guid="{07061D85-9151-4FC4-BB78-13628020D026}">
+ <Condition>VersionNT > 600</Condition>
+ <RegistryValue Root="HKCR" Key="$(var.TestPrefix)Python.NoConFile\Shell\editwithidle" Name="MUIVerb" Value="!(loc.EditMenu)" Type="string" KeyPath="yes" />
+ <RegistryValue Root="HKCR" Key="$(var.TestPrefix)Python.NoConFile\Shell\editwithidle" Name="Subcommands" Value="" Type="string" KeyPath="no" />
+ </Component>
+
+ <Component Id="assoc_editwithidle" Directory="InstallDirectory">
+ <Condition>VersionNT > 600</Condition>
+ <RegistryKey Root="HKCR" Key="$(var.TestPrefix)Python.File\Shell\editwithidle\shell\edit$(var.MajorVersionNumber)$(var.MinorVersionNumber)$(var.Suffix32)">
+ <RegistryValue Name="MUIVerb" Value="!(loc.EditSubMenu)" Type="string" KeyPath="yes" />
+ <RegistryValue Key="command" Value='"[PYTHONW_EXE]" -m idlelib "%L" %*' Type="string" />
+ </RegistryKey>
+ </Component>
+ <Component Id="assoc_editwithidle_nocon" Directory="InstallDirectory">
+ <Condition>VersionNT > 600</Condition>
+ <RegistryKey Root="HKCR" Key="$(var.TestPrefix)Python.NoConFile\Shell\editwithidle\shell\edit$(var.MajorVersionNumber)$(var.MinorVersionNumber)$(var.Suffix32)">
+ <RegistryValue Name="MUIVerb" Value="!(loc.EditSubMenu)" Type="string" KeyPath="yes" />
+ <RegistryValue Key="command" Value='"[PYTHONW_EXE]" -m idlelib "%L" %*' Type="string" />
+ </RegistryKey>
+ </Component>
+
+ <Component Id="assoc_editwithidle_vista" Directory="InstallDirectory">
+ <Condition>VersionNT = 600</Condition>
+ <RegistryKey Root="HKCR" Key="$(var.TestPrefix)Python.File\Shell\editwithidle$(var.MajorVersionNumber)$(var.MinorVersionNumber)$(var.Suffix32)">
+ <RegistryValue Value="!(loc.EditSubMenu)" Type="string" KeyPath="yes" />
+ <RegistryValue Key="command" Value='"[PYTHONW_EXE]" -m idlelib "%L" %*' Type="string" />
+ </RegistryKey>
+ </Component>
+ <Component Id="assoc_editwithidle_nocon_vista" Directory="InstallDirectory">
+ <Condition>VersionNT = 600</Condition>
+ <RegistryKey Root="HKCR" Key="$(var.TestPrefix)Python.NoConFile\Shell\editwithidle$(var.MajorVersionNumber)$(var.MinorVersionNumber)$(var.Suffix32)">
+ <RegistryValue Value="!(loc.EditSubMenu)" Type="string" KeyPath="yes" />
+ <RegistryValue Key="command" Value='"[PYTHONW_EXE]" -m idlelib "%L" %*' Type="string" />
+ </RegistryKey>
</Component>
</Feature>
</Product>
diff --git a/Tools/msi/tcltk/tcltk_en-US.wxl_template b/Tools/msi/tcltk/tcltk_en-US.wxl_template
index d0f8c10..f40fd62 100644
--- a/Tools/msi/tcltk/tcltk_en-US.wxl_template
+++ b/Tools/msi/tcltk/tcltk_en-US.wxl_template
@@ -5,4 +5,8 @@
<String Id="NoPython">No !(loc.ProductName) installation was detected.</String>
<String Id="ShortcutName">IDLE (Python {{ShortVersion}} {{Bitness}})</String>
<String Id="ShortcutDescription">Launches IDLE, the interactive environment for !(loc.ProductName).</String>
+ <String Id="PyDocShortcutName">Python {{ShortVersion}} Module Docs ({{Bitness}})</String>
+ <String Id="PyDocShortcutDescription">Start the !(loc.ProductName) documentation server.</String>
+ <String Id="EditMenu">&amp;Edit with IDLE</String>
+ <String Id="EditSubMenu">Edit with IDLE {{ShortVersion}} ({{Bitness}})</String>
</WixLocalization>