Opened 6 years ago
Closed 5 years ago
#126 closed defect (fixed)
Copy to workspace (same thing in the Inspector) this line - becomes invisible (only when selecting via mouse it appears):
Reported by: | Patrik Svestka | Owned by: | Patrik Svestka |
---|---|---|---|
Priority: | major | Milestone: | |
Component: | default | Keywords: | |
Cc: | Also affects CVS HEAD (eXept version): | no |
Description
The issue is on both workspace and Inspector:
You can copy following line to both and it will disappear and you have to select it via mouse to make it appear again:
Dictionary(Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\97)->Dictionary('Item Name'->'SI' 'Arguments'->'-O -A "\\rprmsacl03\e$$\SI_Prisma_Interface\Dev\Export"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,26' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\89)->Dictionary('Item Name'->'SI' 'Arguments'->'-O -A "\\rprmsacl03\e$$\SI_Prisma_Interface\Dev\Import"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,176' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\80)->Dictionary('Item Name'->'LogSI' 'Arguments'->'-O -A "\\rprmsacl03\e$$\Apps\LogSI"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\app\file_managers\Salamander\salamand.exe,21' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\72)->Dictionary('Item Name'->'SI' 'Arguments'->'-O -A "\\rprmsacl03\PrismaTemplatesSI"' 'Execute Through Shell'->1 'Close Shell Window'->1 'Open Shell Window'->1 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\System32\printui.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\64)->Dictionary('Item Name'->'C:' 'Arguments'->'-O -A "\\rprmsacl03\c$$"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,7' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\56)->Dictionary('Item Name'->'RPRMSWTS03' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\48)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\4)->Dictionary('Item Name'->'rprmswts03' 'Arguments'->'/v:rprmswts03 /f' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'c:\windows\system32\mstsc.exe' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\31)->Dictionary('Item Name'->'CZ PROD Interface' 'Arguments'->'-O -A "\\rprmsacl04\e$$\CZ_Prisma_Interface\Prod"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\23)->Dictionary('Item Name'->'acl06' 'Arguments'->'-t rprmsacl06' 'Execute Through Shell'->1 'Close Shell Window'->1 'Open Shell Window'->1 'Command'->'ping' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\15)->Dictionary('Item Name'->'Rubymine' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\app\IDE\RubyMine 8.0.2\bin\rubymine.exe' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\12)->Dictionary('Item Name'->'IE' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\Program Files\Internet Explorer\iexplore.exe' 'Icon'->'C:\Program Files\Internet Explorer\iexplore.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\111)->Dictionary('Item Name'->'prod_CLF and Dev_DW' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\103)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\95)->Dictionary('Item Name'->'LT' 'Arguments'->'-O -A "\\rprmsacl03\e$$\LT_Prisma_Interface\Dev\Export"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,26' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\87)->Dictionary('Item Name'->'LT' 'Arguments'->'-O -A "\\rprmsacl03\e$$\LT_Prisma_Interface\Dev\Import"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,176' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\79)->Dictionary('Item Name'->'LogRO' 'Arguments'->'-O -A "\\rprmsacl03\e$$\Apps\LogRO"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\app\file_managers\Salamander\salamand.exe,21' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\70)->Dictionary('Item Name'->'LT' 'Arguments'->'-O -A "\\rprmsacl03\PrismaTemplatesLT"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\System32\printui.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\62)->Dictionary('Item Name'->'RPRMSACL03' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\54)->Dictionary('Item Name'->'RPPRMSACL08' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\46)->Dictionary('Item Name'->'SAM_SE_PRISMA_Interface' 'Arguments'->'-O -A "\\rm2ms001429\e$$\SAM_SE_PRISMA_Interface"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe ' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\38)->Dictionary('Item Name'->'RU PROD interface' 'Arguments'->'-O -A "\\rmomsas05\e$$\RU_Prisma_Interface\Prod"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\3)->Dictionary('Item Name'->'rprmsacl04' 'Arguments'->'/v:rprmsacl04 /f' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'c:\windows\system32\mstsc.exe' 'Icon'->'c:\windows\system32\mstsc.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\21)->Dictionary('Item Name'->'acl04' 'Arguments'->'-t rprmsacl04' 'Execute Through Shell'->1 'Close Shell Window'->0 'Open Shell Window'->1 'Command'->'ping' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\13)->Dictionary('Item Name'->'Outlook' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\Program Files (x86)\Microsoft Office\Office14\outlook.exe' 'Icon'->'C:\Program Files (x86)\Microsoft Office\Office14\outlook.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\118)->Dictionary('Item Name'->'symbolic link' 'Arguments'->'/j "$(FullPathInactive)$(NamePart)" "$(FullPath)"' 'Execute Through Shell'->1 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'mklink' 'Icon'->'C:\Windows\system32\SHELL32.DLL,45' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\11)->Dictionary('Item Name'->'Notepad++' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\app\editors\Notepad(x86)++\notepad++.exe' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\101)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\93)->Dictionary('Item Name'->'Export' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\85)->Dictionary('Item Name'->'Import' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\77)->Dictionary('Item Name'->'Log' 'Arguments'->'-O -A "\\rprmsacl03\e$$\Apps\Log"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\app\file_managers\Salamander\salamand.exe,21' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\69)->Dictionary('Item Name'->'CZ' 'Arguments'->'-O -A "\\rprmsacl03\PrismaTemplates"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\System32\printui.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\60)->Dictionary('Item Name'->'RPRMSACL04' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\52)->Dictionary('Item Name'->'RPRMSACL07' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\44)->Dictionary('Item Name'->'SAM_DK_Prisma_Interface' 'Arguments'->'-O -A "\\rm2ms001429\e$$\SAM_DK_Prisma_Interface"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe ' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\36)->Dictionary('Item Name'->'HR PROD Interface' 'Arguments'->'-O -A "\\rprmsacl04\e$$\HR_Prisma_Interface\Prod"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\28)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\2)->Dictionary('Item Name'->'rprmsacl03' 'Arguments'->'/v:rprmsacl03 /f' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'c:\windows\system32\mstsc.exe' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\124)->Dictionary('Item Name'->'ListOfSelectedFiles' 'Arguments'->'$(ListOfSelectedFullNames)' 'Execute Through Shell'->1 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\app\file_managers\Salamander\plugins\makefile.cmd' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\116)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\108)->Dictionary('Item Name'->'disk d:' 'Arguments'->'-O -A "\\rbsmscrm01\d$$"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\10)->Dictionary('Item Name'->'Salamander' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\app\file_managers\Salamander\salamand.exe' 'Icon'->'C:\app\file_managers\Salamander\salamand.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\91)->Dictionary('Item Name'->'HR' 'Arguments'->'-O -A "\\rprmsacl03\e$$\HR_Prisma_Interface\Dev\Import"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,176' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\83)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\75)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\67)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\59)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\50)->Dictionary('Item Name'->'RPRMSWTS06' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\42)->Dictionary('Item Name'->'SAM_AT_PRISMA_Interface' 'Arguments'->'-O -A "\\rm2ms001429\e$$\SAM_AT_PRISMA_Interface"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe ' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\34)->Dictionary('Item Name'->'SI PROD Interface' 'Arguments'->'-O -A "\\rprmsacl04\e$$\SI_Prisma_Interface\Prod"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\26)->Dictionary('Item Name'->'wts03' 'Arguments'->'-t rprmwts03' 'Execute Through Shell'->1 'Close Shell Window'->1 'Open Shell Window'->1 'Command'->'ping' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\18)->Dictionary('Item Name'->'EA' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\app\software_architecture\EA10\EA.exe' 'Icon'->'C:\app\software_architecture\EA10\EA.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\122)->Dictionary('Item Name'->'SYNC-fastcopy' 'Arguments'->'/cmd=sync /auto_close /open_window /verify /acl /bufsize=512MB /disk_mode=auto "$(Fullname)" /to="$(FullPathInactive)"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\app_portable\tools\fastcopy\x64\FastCopy.exe' 'Icon'->'C:\app_portable\tools\fastcopy\allway_sync_metro_icon_32x32.ico,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\114)->Dictionary('Item Name'->'disk e:' 'Arguments'->'-O -A "\\rbsmscrm01\e$$"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\106)->Dictionary('Item Name'->'dev_CLF and PROD_DW' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\98)->Dictionary('Item Name'->'SK' 'Arguments'->'-O -A "\\rprmsacl03\e$$\SK_Prisma_Interface\Dev\Export"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,26' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\9)->Dictionary('Item Name'->'Compare' 'Arguments'->'"$(FileOrDirToCompareLeft)" "$(FileOrDirToCompareRight)"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\app\tools\Beyond Compare 4\BCompare.exe' 'Icon'->'C:\app\tools\Beyond Compare 4\BCompare.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\81)->Dictionary('Item Name'->'LogSK' 'Arguments'->'-O -A "\\rprmsacl03\e$$\Apps\LogSK"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\app\file_managers\Salamander\salamand.exe,21' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\73)->Dictionary('Item Name'->'SK' 'Arguments'->'-O -A "\\rprmsacl03\PrismaTemplatesSK"' 'Execute Through Shell'->1 'Close Shell Window'->1 'Open Shell Window'->1 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\System32\printui.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\65)->Dictionary('Item Name'->'D:' 'Arguments'->'-O -A "\\rprmsacl03\d$$"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,7' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\57)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\49)->Dictionary('Item Name'->'Praha' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\40)->Dictionary('Item Name'->'TR PROD Interface' 'Arguments'->'-O -A "\\rm2ms001157\e$$\TR_Prisma_Interface"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe ' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\32)->Dictionary('Item Name'->'LT PROD Interface' 'Arguments'->'-O -A "\\rprmsacl04\e$$\LT_Prisma_Interface\Prod"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\24)->Dictionary('Item Name'->'acl07' 'Arguments'->'-t rprmsacl07' 'Execute Through Shell'->1 'Close Shell Window'->1 'Open Shell Window'->1 'Command'->'ping' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\16)->Dictionary('Item Name'->'cmd' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'c:\windows\system32\cmd.exe' 'Icon'->'c:\windows\system32\cmd.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\120)->Dictionary('Item Name'->'COPY-fastcopy' 'Arguments'->'/cmd=diff /auto_close /open_window /verify /acl /bufsize=512MB /disk_mode=auto "$(Fullname)" /to="$(FullPathInactive)"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\app_portable\tools\fastcopy\x64\FastCopy.exe' 'Icon'->'C:\app_portable\tools\fastcopy\ProgramFilesFolder.ico,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\112)->Dictionary('Item Name'->'disk c:' 'Arguments'->'-O -A "\\rbsmscrm02\c$$"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\104)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\96)->Dictionary('Item Name'->'RO' 'Arguments'->'-O -A "\\rprmsacl03\e$$\RO_Prisma_Interface\Dev\Export"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,26' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\88)->Dictionary('Item Name'->'RO' 'Arguments'->'-O -A "\\rprmsacl03\e$$\RO_Prisma_Interface\Dev\Import"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,176' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\8)->Dictionary('Item Name'->'Proclarity' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\Program Files (x86)\ProClarity\ProClarity Desktop Professional\ProClarity.exe' 'Icon'->'C:\Program Files (x86)\ProClarity\ProClarity Desktop Professional\ProClarity.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\71)->Dictionary('Item Name'->'RO' 'Arguments'->'-O -A "\\rprmsacl03\PrismaTemplatesRO"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\System32\printui.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\63)->Dictionary('Item Name'->'disky' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\55)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\47)->Dictionary('Item Name'->'SAM_FI_Prisma_Interface' 'Arguments'->'-O -A "\\rm2ms001429\e$$\SAM_FI_Prisma_Interface"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe ' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\39)->Dictionary('Item Name'->'ZA PROD Interface' 'Arguments'->'-O -A "\\RM2MS001091\e$$\ZA_Prisma_Interface"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\30)->Dictionary('Item Name'->'Interfaces' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\22)->Dictionary('Item Name'->'acl03' 'Arguments'->'-t rprmsacl03' 'Execute Through Shell'->1 'Close Shell Window'->1 'Open Shell Window'->1 'Command'->'ping' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\14)->Dictionary('Item Name'->'putty' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\App\putty\putty.exe' 'Icon'->'C:\app\net_tools\putty\putty.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\119)->Dictionary('Item Name'->'fastcopy' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\110)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\102)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\94)->Dictionary('Item Name'->'CZ' 'Arguments'->'-O -A "\\rprmsacl03\e$$\CZ_Prisma_Interface\Dev\Export"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,26' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\86)->Dictionary('Item Name'->'CZ' 'Arguments'->'-O -A "\\rprmsacl03\e$$\CZ_Prisma_Interface\Dev\Import"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,176' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\78)->Dictionary('Item Name'->'LogLT' 'Arguments'->'-O -A "\\rprmsacl03\e$$\Apps\LogLT"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\app\file_managers\Salamander\salamand.exe,21' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\7)->Dictionary('Item Name'->'Sql2008' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe' 'Icon'->'C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\61)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\53)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\45)->Dictionary('Item Name'->'SAM_NO_Prisma_Interface' 'Arguments'->'-O -A "\\rm2ms001429\e$$\SAM_NO_Prisma_Interface"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe ' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\37)->Dictionary('Item Name'->'Outside servers' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->3 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\29)->Dictionary('Item Name'->'Servery' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\20)->Dictionary('Item Name'->'ping' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\125)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\117)->Dictionary('Item Name'->'Tools' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\109)->Dictionary('Item Name'->'disk e:' 'Arguments'->'-O -A "\\rbsmscrm01\e$$"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\100)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\92)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\84)->Dictionary('Item Name'->'Interface' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\76)->Dictionary('Item Name'->'Log' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\68)->Dictionary('Item Name'->'Printing templates' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\6)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\51)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\43)->Dictionary('Item Name'->'SAM_BE_PRISMA_Interface' 'Arguments'->'-O -A "\\rm2ms001429\e$$\SAM_BE_PRISMA_Interface"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe ' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\35)->Dictionary('Item Name'->'SK PROD Interface' 'Arguments'->'-O -A "\\rprmsacl04\e$$\SK_Prisma_Interface\Prod"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\27)->Dictionary('Item Name'->'wts06' 'Arguments'->'-t rprmswts06' 'Execute Through Shell'->1 'Close Shell Window'->1 'Open Shell Window'->1 'Command'->'ping' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\19)->Dictionary('Item Name'->'Snagit' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\Program Files (x86)\TechSmith\Snagit 12\Snagit32.exe' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\123)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\115)->Dictionary('Item Name'->'(Submenu End)' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->2 'Show In Toolbar'->0 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\107)->Dictionary('Item Name'->'disk c:' 'Arguments'->'-O -A "\\rbsmscrm01\c$$"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\1)->Dictionary('Item Name'->'RDP' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'c:\windows\system32\mstsc.exe,0' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\99)->Dictionary('Item Name'->'HR' 'Arguments'->'-O -A "\\rprmsacl03\e$$\HR_Prisma_Interface\Dev\Export"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,26' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\90)->Dictionary('Item Name'->'SK' 'Arguments'->'-O -A "\\rprmsacl03\e$$\SK_Prisma_Interface\Dev\Import"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,176' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\82)->Dictionary('Item Name'->'LogHR' 'Arguments'->'-O -A "\\rprmsacl03\e$$\Apps\LogHR"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\app\file_managers\Salamander\salamand.exe,21' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\74)->Dictionary('Item Name'->'HR' 'Arguments'->'-O -A "\\rprmsacl03\PrismaTemplatesHR"' 'Execute Through Shell'->1 'Close Shell Window'->1 'Open Shell Window'->1 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\System32\printui.exe,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\66)->Dictionary('Item Name'->'E:' 'Arguments'->'-O -A "\\rprmsacl03\e$$"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,7' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\58)->Dictionary('Item Name'->'RPRMSACL06' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->'') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\5)->Dictionary('Item Name'->'rbsmsts01' 'Arguments'->'/v:rbsmsts01 /f' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'c:\windows\system32\mstsc.exe' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\41)->Dictionary('Item Name'->'GR PROD Interface' 'Arguments'->'-O -A "\\rm2ms001157\e$$\GR_Prisma_Interface"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe ' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\33)->Dictionary('Item Name'->'RO PROD Interface' 'Arguments'->'-O -A "\\rprmsacl04\e$$\RO_Prisma_Interface\Prod"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'C:\Windows\system32\SHELL32.DLL,9' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\25)->Dictionary('Item Name'->'acl08' 'Arguments'->'-t rprmsacl08' 'Execute Through Shell'->1 'Close Shell Window'->1 'Open Shell Window'->1 'Command'->'ping' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\17)->Dictionary('Item Name'->'Palemoon' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\app\browsers\PaleMoon\palemoon.exe' 'Icon'->'C:\app\browsers\PaleMoon\palemoon.exe,5' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\121)->Dictionary('Item Name'->'MOVE-fastcopy' 'Arguments'->'/cmd=move /auto_close /open_window /verify /acl /bufsize=512MB /disk_mode=auto "$(Fullname)" /to="$(FullPathInactive)"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'C:\app_portable\tools\fastcopy\x64\FastCopy.exe' 'Icon'->'C:\app_portable\tools\fastcopy\Favorites.ico,0' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\113)->Dictionary('Item Name'->'disk d:' 'Arguments'->'-O -A "\\rbsmscrm02\d$$"' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'$(SalDir)\salamand.exe' 'Icon'->'' 'Type'->0 'Show In Toolbar'->1 'Initial Directory'->'$(FullPath)') Win32OperatingSystem::RegistryEntry(HKEY_USERS\S-1-5-21-119559289-1840127793-336618761-855951\Software\Altap\Altap Salamander 3.08\User Menu\105)->Dictionary('Item Name'->'Madarsko' 'Arguments'->'' 'Execute Through Shell'->0 'Close Shell Window'->0 'Open Shell Window'->0 'Command'->'' 'Icon'->'' 'Type'->1 'Show In Toolbar'->1 'Initial Directory'->''))
Attachments (7)
Change History (41)
comment:1 Changed 6 years ago by
comment:2 Changed 6 years ago by
According to my experiments (using the code above), string of length 3275 bytes is drawn, string of length 3275 fails to draw.
Interestingly, original (eXept's) code uses the limit of 32758 bytes, (~10 times more,
little less than 32K)
Proper fix for this is, however, a different story. We need to draw it chunk-by-chunk if length exceeds limit. I'd like to avoid an extra call to compute width in order to calculate next reference point manually, so we might need to play with GetTextAlign()
/ SetTextAlign()
and use TA_UPDATECP
to update reference point automatically.
comment:3 Changed 6 years ago by
Milestone: | → 8.0.0 |
---|
comment:4 Changed 6 years ago by
As Jan was curious about my first attempt here is an C excerpt of the code (WinWorkstation?.st):
displayString:aString from:index1 to:index2 x:x y:y in:ignoredDrawableId with:aGCId opaque:opaque "draw a sub-string - if opaque is false, draw foreground only; otherwise, draw both foreground and background characters. If the coordinates are not integers, an error is triggered." %{ /* NOCONTEXT */ unsigned char *cp; unsigned int uAlignPrev; OBJ cls; int i1, i2, n, maxCharBuffer; int nInstBytes; long l, loopIndex; if (__isExternalAddress(aGCId) && __isNonNilObject(aString) && __bothSmallInteger(index1, index2) && __bothSmallInteger(x, y)) { struct gcData *gcData; int pX, pY; HDC hDC; HFONT hOldFont; i1 = __intVal(index1) - 1; i2 = __intVal(index2) - 1; if ((i1 < 0) || (i2 < i1)) { RETURN (self); } gcData = _GCDATA(aGCId); hDC = _getDC(gcData); pX = __intVal(x); pY = __intVal(y); pY -= gcData->fontAscent; if (opaque == true) { if (gcData->bkMode != BK_OPAQUE) { SetBkMode(hDC, OPAQUE); gcData->bkMode = BK_OPAQUE; } } else { if (gcData->bkMode != BK_TRANSPARENT) { SetBkMode(hDC, TRANSPARENT); gcData->bkMode = BK_TRANSPARENT; } } #if 0 /* leftover code from tries to make TextOut honor the gc-mode, * until I googled, that TextOut does not (by purpose, or backward-bug compatibility) */ hOldFont = SelectObject(hDC, gcData->hFont); SetTextColor(hDC, gcData->fgColor); SetBkColor(hDC, gcData->bgColor); #endif #if 0 GcDataGetPen(hDC, gcData); #endif /* Text Alignment Options from WinGDI.h */ //#define TA_NOUPDATECP 0 // Do not set the current point to the reference point #define TA_UPDATECP 1 // Set the current point to the reference point. //#define TA_LEFT 0 // The reference point will be on the left edge of the bounding rectangle of the text. //#define TA_RIGHT 2 // The reference point will be on the right edge of the bounding rectangle of the text. //#define TA_CENTER 6 // The reference point will be horizontally centered along the bounding rectangle of the text. //#define TA_TOP 0 // The reference point will be on the top edge of the bounding rectangle of the text. //#define TA_BOTTOM 8 // The reference point will be on the bottom edge of the bounding rectangle of the text. //#define TA_BASELINE 24 // The reference point will be on the baseline of the text. //#if (WINVER >= 0x0400) // #define TA_RTLREADING 256 // Win 95/98 only:Display the text right-to-left (if the font is designed for right-to-left reading). // #define TA_MASK (TA_BASELINE+TA_CENTER+TA_UPDATECP+TA_RTLREADING) //#else // #define TA_MASK (TA_BASELINE+TA_CENTER+TA_UPDATECP) //#endif cls = __qClass(aString); cp = __stringVal(aString); l = i2 - i1 + 1; maxCharBuffer = 0; if (l > 3275) { /* Windows (as in XP or newer) limits the string size for TextOut* to 3275 */ //l = 3275; maxCharBuffer = 3275; } if (__isStringLike(aString)) { n = __stringSize(aString); commonOutChars: if (i2 < n){ if (l <= 3275){ cp += i1; CPRINTF(("string1: %s pos=%d/%d l=%d hDC=%x\n", cp, pX, pY,l,hDC)); SetTextAlign(hDC, TA_CENTER | TA_BASELINE); if (! TextOutA(hDC, pX, pY, (char *)cp, l)) { PRINTF(("WinWorkstation [warning]: TextOutA failed. [%d]\n", __LINE__)); PRINTF(("WinWorkstation [warning]: lastError=%d x:%d y:%d len:%d\n", GetLastError(), pX, pY, l)); goto error; } else { cp += i1; loopIndex = l; uAlignPrev = SetTextAlign(hDC, TA_UPDATECP); while(loopIndex > maxCharBuffer);{ SetTextAlign(hDC, GetTextAlign(hdc) | TA_UPDATECP); //MoveToEx(hDC, pX, pY, NULL); if (! TextOutA(hDC, pX, pY, (char *)cp, maxCharBuffer)) { PRINTF(("WinWorkstation [warning]: TextOutA failed. [%d]\n", __LINE__)); PRINTF(("WinWorkstation [warning]: lastError=%d x:%d y:%d len:%d\n", GetLastError(), pX, pY, l)); goto error; } pX += maxCharBuffer; loopIndex -= maxCharBuffer; cp += maxCharBuffer; } if (! TextOutA(hDC, pX, pY, (char *)cp, loopIndex)) { PRINTF(("WinWorkstation [warning]: TextOutA failed. [%d]\n", __LINE__)); PRINTF(("WinWorkstation [warning]: lastError=%d x:%d y:%d len:%d\n", GetLastError(), pX, pY, l)); goto error; } SetTextAlign(hDC, uAlignPrev); } } } goto ret; }
comment:5 Changed 6 years ago by
I'm still working on this issue. Meantime I have found out that a different version (6.2.5.2131) of StX has different size of the buffer! This shows correctly even when the buffer is just below 4096. Now the question is what happened that the buffer in the HEAD is only 3275. Was there a commit that influenced this?
EDIT: (improved the code)
EDIT2: (further improved the code)
"/Smalltalk versionString'6.2.5.2131' maxCharBuffer := 4094. charToDisplay := 4095. contents := String new: charToDisplay. tempContents := String new. aLetterCollection := OrderedCollection new. startingLetter := $A. iterrations := (charToDisplay / maxCharBuffer). iterrations isInteger ifFalse:[ iterrations := (iterrations asFloat) floor + 1. ]. (1 to: iterrations) do: [:aNumber | aLetterCollection add: (((startingLetter asInteger - 1) + aNumber) asCharacter). ]. aLetterCollection do: [:aLetter| charToDisplay > maxCharBuffer ifTrue: [ pickContents := contents copyFrom:1 to:maxCharBuffer. pickContents replaceAll: Character space with: aLetter. tempContents := tempContents, pickContents. contents := contents copyFrom:(maxCharBuffer+1) to:charToDisplay. charToDisplay := charToDisplay - maxCharBuffer. ] ifFalse: [ remainingContents := contents copyFrom:1 to:charToDisplay. remainingContents replaceAll: Character space with: aLetter. contents := tempContents, remainingContents. ]. ]. top := StandardSystemView new. top extent:300@200. textView := EditTextView new. textView origin:0.0 @ 0.0 corner:1.0 @ 1.0. top addSubView:textView. textView contents: contents. top open.
Changed 6 years ago by
Attachment: | issue_126_patch_1_of_1_r93c03926d389.patch added |
---|
Drawing TextOutA and TextOutW chunk-by-chunk
comment:6 Changed 6 years ago by
This patch should issue_126_patch_1_of_1_r93c03926d389.patch
fix the issue with the drawing. The current buffer limit is set at 3275 - don't know yet why the older version of StX allowed bigger buffer.
comment:7 Changed 6 years ago by
Status: | new → testing |
---|
comment:8 follow-up: 9 Changed 6 years ago by
Cool! Thanks.
I did a quick test, it works and fixes the issue (i.e., it displays the text
even if length exceeds internal buffer length).
I have couple comments though. As we already discussed, I'd prefer you to address them rather than doing it myself. Do begin with:
- Please fix indentation. Indent one level with 4 spaces (but please don't change tabs to spaces in whole file - it's a long story to explain why).
- Why did you changed
int
tolong
? On Win32, both i386 and x86_64 versions, bothint
andlong
are 32bit signed integers 2's complement. Is there any reason I don't see? - I'd prefer constants to be
UPPER_CASE_SNAKED
rather thancamelCaseLikeVariables
. Just to follow convention in rest of the code. I do appreciate you have usedconst int ...
rather than#define
! - Please add a comment below the method header explaining that the thicky point is that there's an (undocumented) limited internal buffer so we need to check length to draw against that limit and draw it chunk. Add a references (URL) to this issue at the end of a commit - for better traceability in future.
Sorry for asking more after all that hard work.
Besides, the logic seems bit convoluted and little hard to understand. Maybe it's just because now I'm tired, I'll try to outline simpler code later, doing this now is would make no good :-)
Again, despite all my comments, well done. This one is not the easiest bug to begin with!
comment:9 Changed 6 years ago by
Replying to jan vrany:
Cool! Thanks.
I did a quick test, it works and fixes the issue (i.e., it displays the text
even if length exceeds internal buffer length).
Glad it works for you. I have encountered another 2 bugs when fixing this one - will post them, when I have them isolated and repeatable.
I have couple comments though. As we already discussed, I'd prefer you to address them rather than doing it myself. Do begin with:
- Please fix indentation. Indent one level with 4 spaces (but please don't change tabs to spaces in whole file - it's a long story to explain why).
I've done that in the new version (not ready yet).
- Why did you changed
int
tolong
? On Win32, both i386 and x86_64 versions, bothint
andlong
are 32bit signed integers 2's complement. Is there any reason I don't see?
Well that was probably years from now when int was now short .]. I've changed all the long back to int as those are really synonyms now.
- I'd prefer constants to be
UPPER_CASE_SNAKED
rather thancamelCaseLikeVariables
. Just to follow convention in rest of the code. I do appreciate you have usedconst int ...
rather than#define
!
Done. Glad you like const int
.
- Please add a comment below the method header explaining that the thicky point is that there's an (undocumented) limited internal buffer so we need to check length to draw against that limit and draw it chunk. Add a references (URL) to this issue at the end of a commit - for better traceability in future.
I'll do that for the comment - you can check it later on when I have new version out. I've already added the URL to the commit could you check (it is below the text) - the link is pointing to this ticket.
Sorry for asking more after all that hard work.
Besides, the logic seems bit convoluted and little hard to understand. Maybe it's just because now I'm tired, I'll try to outline simpler code later, doing this now is would make no good :-)
You are right about the convolution. I've made it much simpler in the newer version but it is not ready yet. I'll post it as soon I've it done. So please don't post your idea yet (don't waste energy), but tell me when the newer patch is out, ok?
Again, despite all my comments, well done. This one is not the easiest bug to begin with!
Thank you very much for the encouragement. I did C programming eon ago.
EDIT: plus now I have found a bug in my code.
comment:10 Changed 6 years ago by
So please don't post your idea yet (don't waste energy), but tell me when the newer patch is out, ok?
Perfect, I'll wait for improved one. Thanks!
comment:11 Changed 6 years ago by
I've finished the vastly improved version. I hope you will like it.
issue_126_patch_1_of_1_redc9b78c5b42.patch
Changed 6 years ago by
Attachment: | issue_126_patch_1_of_1_redc9b78c5b42.patch added |
---|
The new improved version of the fix - Drawing TextOutA and TextOutW chunk-by-chunk
comment:12 follow-up: 13 Changed 6 years ago by
I've finished the vastly improved version. I hope you will like it.
Very nice indeed. The logic is not simple and crystal-clear. I tested it and it works, so I pushed it to my staging repository.
With your permission, I'll close this issue as soon as it bubbles up to bitbucket repo. Thanks!
comment:13 Changed 6 years ago by
Replying to jan vrany:
I've finished the vastly improved version. I hope you will like it.
Very nice indeed. The logic is not simple and crystal-clear. I tested it and it works, so I pushed it to my staging repository.
With your permission, I'll close this issue as soon as it bubbles up to bitbucket repo. Thanks!
I hope the logic is "now" simple and crystal-clear and not "not" :). I love code where nothing can be deleted without affecting the functionality - simple yet effective.
As for the closing, there is still one unresolved issue in this ticket (which I don't understand yet as I did not check the source). Why the version '6.2.5.2131'("/Smalltalk versionString) has size of the MAX_DISPLAY_BUFFER = 4095 (experimentally tested) and the newest version '6.2.6.0' has the size MAX_DISPLAY_BUFFER = 3275 (also experimentally tested). My wild guess is that it has something to do with Unicode32String, which does not work on the older version, isn't that possible?
When this is resolved you can close the ticket and I'll finally have my own first patch, yay!
comment:14 follow-up: 15 Changed 6 years ago by
I hope the logic is "now" simple and crystal-clear and not "not" :). I love code where nothing can be deleted without affecting the functionality - simple yet effective.
Sorry, these typos. Of course I meant "now".
Why the version '6.2.5.2131'("/Smalltalk versionString)
Hard to tell. I don't have build #2131 at hand so I can't check. Maybe if you can upload it somewhere for me...
comment:15 Changed 6 years ago by
Why the version '6.2.5.2131'("/Smalltalk versionString)
Hard to tell. I don't have build #2131 at hand so I can't check. Maybe if you can upload it somewhere for me...
I think that was the very first version I've downloaded directly from eXcept - no sources there. I have uploaded it to - https://uloz.to/!5lkScuWvc1DV/smalltalkx-jv-branch-6-2-5-x86-64-win32-rar. I'm curious about it :).
comment:16 Changed 6 years ago by
One more question about the code. Is there any speed implication in doing
either ((char *)cp or w_cp) ?
By segment like:
TextOutA(hDC, 0, 0, (char *)cp, MIN(toDisplay, MAX_DISPLAY_BUFFER))
Or doing it all at once:
WIDECHAR *w_cp = (WIDECHAR *)cp; TextOutW(hDC, 0, 0, w_cp, MIN(toDisplay, MAX_DISPLAY_BUFFER))
Maybe I should harmonize it? What do you think?
comment:17 Changed 6 years ago by
One more question about the code. Is there any speed implication in doing either ((char *)cp or w_cp) ?
Well, we need to use w_cp
variable in order have correct offsets in w_cp += MAX_DISPLAY_BUFFER
(we're working with 2byte characters here so compiler has to know that w_cp
in pointer (or array of, that's the same) to 2-byte element. So this has to stay.
We can get rid out superfluous cast, replacing (char *)cp
by just cp
in call to TextOutA
. Not sure if it's worth of...
There are no performance implications.
comment:18 follow-up: 19 Changed 6 years ago by
As for the closing, there is still one unresolved issue in this ticket (which I don't understand yet as I did not check the source). Why the version '6.2.5.2131'("/Smalltalk versionString) has size of the MAX_DISPLAY_BUFFER = 4095 (experimentally tested) and the newest version '6.2.6.0' has the size MAX_DISPLAY_BUFFER = 3275 (also experimentally tested). My wild guess is that it has something to do with Unicode32String, which does not work on the older version, isn't that possible?
You're right. This is funny. The revision in 2131 build is aa3b1dc01cc0/stx.libview, to see differenceses, do hg diff -r aa3b1dc01cc0 WinWorkstation.st | less
. I don't understand why the limit is different here. But hey, MS docs do not mention any limit
at all...
comment:19 Changed 6 years ago by
Replying to jan vrany:
One more question about the code. Is there any speed implication in doing either ((char *)cp or w_cp) ?
Well, we need to use
w_cp
variable in order have correct offsets inw_cp += MAX_DISPLAY_BUFFER
(we're working with 2byte characters here so compiler has to know thatw_cp
in pointer (or array of, that's the same) to 2-byte element. So this has to stay.
We can get rid out superfluous cast, replacing
(char *)cp
by justcp
in call toTextOutA
. Not sure if it's worth of...
Yes I was talking about the (char *)cp to cp. I know that the w_cp is needed for the Unicode version.
There are no performance implications.
If there are no performance implications then no change is needed.
Replying to jan vrany:
As for the closing, there is still one unresolved issue in this ticket (which I don't understand yet as I did not check the source). Why the version '6.2.5.2131'("/Smalltalk versionString) has size of the MAX_DISPLAY_BUFFER = 4095 (experimentally tested) and the newest version '6.2.6.0' has the size MAX_DISPLAY_BUFFER = 3275 (also experimentally tested). My wild guess is that it has something to do with Unicode32String, which does not work on the older version, isn't that possible?
You're right. This is funny. The revision in 2131 build is aa3b1dc01cc0/stx.libview, to see differenceses, do
hg diff -r aa3b1dc01cc0 WinWorkstation.st | less
. I don't understand why the limit is different here. But hey, MS docs do not mention any limit
at all...
I was cruising through the code and did not find anything of real importance (maybe color of a background can make the buffer smaller??? another wild guess)
But you are right there was no mention of any limit in MS docs so this fix will work till MS changes it...
comment:20 follow-up: 21 Changed 6 years ago by
Neither I could find a difference, other than some caches are larger now. Not sure whether and if it could at all affect TextOutA()
in some way.
Anyways, I think we're done for now. If you agree, let's close this issue.
comment:21 Changed 6 years ago by
Replying to jan vrany:
Neither I could find a difference, other than some caches are larger now. Not sure whether and if it could at all affect
TextOutA()
in some way.
Anyways, I think we're done for now. If you agree, let's close this issue.
Yes we are done. Please close the issue. The only difference I could find is that the Unicode32String
does not work in the older version.
comment:22 Changed 6 years ago by
Resolution: | → fixed |
---|---|
Status: | testing → closed |
comment:23 Changed 6 years ago by
Resolution: | fixed |
---|---|
Status: | closed → reopened |
comment:24 Changed 6 years ago by
Milestone: | 8.0.0 |
---|
The current code no longer exhibits an error. The ticket has been reopened for it is thought there's a better solution. However the current solution is good enough for 8.0.0 so this should not block it.
comment:26 Changed 5 years ago by
I have created a dynamic font maxDisplayBuffer
buffer patch. Now it should work for all font sizes.
Changed 5 years ago by
Attachment: | libview_fix_1_of_1_rev_d97ece7b69c3__126_Copy_to_workspace__same_thing_in_the_Inspector__this_line___becomes_invisible.patch added |
---|
the maximum display buffer adjusting for all font sizes.
comment:27 Changed 5 years ago by
Owner: | set to Patrik Svestka |
---|---|
Status: | reopened → accepted |
comment:28 Changed 5 years ago by
Status: | accepted → testing |
---|
comment:29 Changed 5 years ago by
After multiple interactions I have created a fix with a test.
Explaining why the test is created only for 24bpp for now:
For now the test runs only on 24dpp (on Windows it is fixed (see hack & issue #201); on Linux it is not fixed but since there are some hard coded shortcuts ( see issue #207 for more) it is hard to test 16bpp -> skipped that. I did not manage to run StX on 32bpp on Linux and thus did not create test for such depth. Such test should not be an issue because 32bit depth is a 24bit depth with added alpha.)
The core of the patch
I'll probably create a blog post for this patch, but currently I do not have space to write it so I'm writing it here.
On windows (7 and up) there is undocumented, you can't find this information anywhere, limit for raster size when using TextOutA
or TextOutW
. Experimentally, I have come to the conclusion that the limit is most likely set to 16384 points of the raster.
To correctly calculate the maximum display buffer (maxDisplayBuffer
) I have come to a formula:
maxDisplayBuffer = 16384 / (maxWidth + tmet.tmOverhang);
maxWidth
is the maximum selected font width
tmet.tmOverhang
is the "extra width per string that may be added to some synthesized fonts." -> If you want to get the actual width you have to add it to maxWidth. You will get the whole extent then. (For most fonts tmOverhang
will be 0.)
The whole definition of tmOverhang
is the following (from MSND about TEXTMETRIC structure https://msdn.microsoft.com/en-us/library/windows/desktop/dd145132(v=vs.85).aspx):
tmOverhang
The extra width per string that may be added to some synthesized fonts. When synthesizing some attributes, such as bold or italic, graphics device interface (GDI) or a device may have to add width to a string on both a per-character and per-string basis. For example, GDI makes a string bold by expanding the spacing of each character and overstriking by an offset value; it italicizes a font by shearing the string. In either case, there is an overhang past the basic string. For bold strings, the overhang is the distance by which the overstrike is offset. For italic strings, the overhang is the amount the top of the font is sheared past the bottom of the font.
The tmOverhang member enables the application to determine how much of the character width returned by a GetTextExtentPoint32 function call on a single character is the actual character width and how much is the per-string extra width. The actual width is the extent minus the overhang.
In very rare case there is something wrong with GetTextMetricsW(hDC, &tmet)
there is a fix maxDisplayBuffer = 107;
. (Smaller buffer would be extremely slow).
This value was derived from all 1170 fonts
installed on my computer and computing avgWidth for all fonts size 96pt (In my eyes, this should suffice 99.9% of times. When was the last time you have used 96pt font and above for extremely long strings?)
Jan, please see the patch and test.
Changed 5 years ago by
Attachment: | libview_fix_1_of_1_rev_e703c1122501_Removing_hack__correctly_calculating_masDisplayBuffer_and_having_fallback_maxDisplayBuffer_is_set_to_107_characters_.patch added |
---|
maxDisplayBuffer calculation with test. Adding additional selector isDepthXXImage where XX is Screen depth
Changed 5 years ago by
Attachment: | libview_fix_1_of_1_rev_53572fb6382e_Issue__126__Removing_hack__correctly_calculating_masDisplayBuffer_and_having_fallback_maxDisplayBuffer_is_set_to_107_characters_.patch added |
---|
maxDisplayBuffer calculation with test. Adding additional selector isDepthXXImage where XX is Screen depth
comment:30 Changed 5 years ago by
Sigh, I have added a OS detection.
The test should run only on Windows. The problem addresses a Windows font issue.
Changed 5 years ago by
Attachment: | libview_fix_1_of_1_rev_0970def93a4c_Issue__126__Removing_hack__correctly_calculating_masDisplayBuffer_and_having_fallback_maxDisplayBuffer_is_set_to_107_characters_.patch added |
---|
maxDisplayBuffer calculation with test. Adding additional selector isDepthXXImage where XX is Screen depth
comment:31 Changed 5 years ago by
Your idea with caching the maxDisplayBuffer
would speed things up considerably when the calculation is done often - like selecting very long strings, doing some manipulation with long strings.
My idea is, if everything works as it should, is to calculate maxDisplayBuffer
for all fonts that user is using in StX during first StX run and buffer them.
If user decides to switch font, maxDisplayBuffer
would be calculated for that too.
Should StX find any unbuffered maxDipslayBuffer
for font used, during its start, it should recalculate it for that font too.
comment:32 Changed 5 years ago by
Hi,
I tried to apply attached patches but the fail to apply cleanly (got some rejection). Maybe I did not apply some (all) of them in right order or something.
Could you rebase your patches atop of 76e39223f5ab/stx.libview and then export all of them at once (so we have ... 1_of_3...patch
, ...2_of_3...patch
- the it;s clear which and in what order to apply? THanks!
comment:33 Changed 5 years ago by
Ah, you were right. The patch should have been in three files. I have marge those into one file and edited it to fit the latest changes
I have recreated the patch from the latest swing
version - 86cba794dee3/stx.libview.
You can find the patch attached to this ticket:
libview_fix_1_of_1_rev_96a744e08e25_Issue__126__Removing_hack__correctly_calculating_masDisplayBuffer_and_having_fallback_maxDisplayBuffer_is_set_to_107_characters_.patch
Changed 5 years ago by
Attachment: | libview_fix_1_of_1_rev_96a744e08e25_Issue__126__Removing_hack__correctly_calculating_masDisplayBuffer_and_having_fallback_maxDisplayBuffer_is_set_to_107_characters_.patch added |
---|
A patch containing all the changes in one file - hopefully last patch
comment:34 Changed 5 years ago by
Resolution: | → fixed |
---|---|
Status: | testing → closed |
Finally, properly fixed in:
- e2051b1553f0/stx.libview - Issue #126: Removing hack, correctly calculating masDisplayBuffer and having fallback maxDisplayBuffer is set to 107 characters.
Thanks, Patrik!
Simpler way to reproduce
With 4k string it fails to draw it. With 3k string, it draws it just fine.
The code responsible for drawing the string is in
WinWorkstation>>displayString:from:to:x:y:in:with:opaque:
. Note, that the code is broken anyway as it just truncates the string drawn - it should iterate over the string and draw it by pieces if there's some internal (and undocumented!) limit.