übernahme Code Shortcut
@@ -0,0 +1,76 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10" xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10" xmlns:uap2="http://schemas.microsoft.com/appx/manifest/uap/windows10/2" xmlns:uap3="http://schemas.microsoft.com/appx/manifest/uap/windows10/3" xmlns:uap4="http://schemas.microsoft.com/appx/manifest/uap/windows10/4" xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities" xmlns:rescap3="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities/3" xmlns:desktop="http://schemas.microsoft.com/appx/manifest/desktop/windows10" xmlns:desktop2="http://schemas.microsoft.com/appx/manifest/desktop/windows10/2" xmlns:com="http://schemas.microsoft.com/appx/manifest/com/windows10" xmlns:wincap3="http://schemas.microsoft.com/appx/manifest/foundation/windows10/windowscapabilities/3" IgnorableNamespaces="uap4 wincap3 rescap3 desktop2 com">
|
||||
<Identity Name="63764Meltytech.Shotcut" ProcessorArchitecture="x64" Publisher="CN=8BAA9DB9-77D3-4EAC-BE1B-8F5F951123CB" Version="19.6.15.0" />
|
||||
<Properties>
|
||||
<DisplayName>Shotcut</DisplayName>
|
||||
<PublisherDisplayName>Meltytech</PublisherDisplayName>
|
||||
<Logo>Assets\StoreLogo.png</Logo>
|
||||
</Properties>
|
||||
<Resources>
|
||||
<Resource Language="en" />
|
||||
<Resource Language="ca" />
|
||||
<Resource Language="cs" />
|
||||
<Resource Language="da" />
|
||||
<Resource Language="de" />
|
||||
<Resource Language="el" />
|
||||
<Resource Language="en-GB" />
|
||||
<Resource Language="es" />
|
||||
<Resource Language="et" />
|
||||
<Resource Language="fi" />
|
||||
<Resource Language="fr" />
|
||||
<Resource Language="hu" />
|
||||
<Resource Language="it" />
|
||||
<Resource Language="ja" />
|
||||
<Resource Language="nb" />
|
||||
<Resource Language="ne" />
|
||||
<Resource Language="nl" />
|
||||
<Resource Language="nn" />
|
||||
<Resource Language="pl" />
|
||||
<Resource Language="pt-BR" />
|
||||
<Resource Language="pt-PT" />
|
||||
<Resource Language="ru" />
|
||||
<Resource Language="sk" />
|
||||
<Resource Language="sl" />
|
||||
<Resource Language="sv" />
|
||||
<Resource Language="tr" />
|
||||
<Resource Language="uk" />
|
||||
<Resource Language="zh-CN" />
|
||||
<Resource Language="zh-TW" />
|
||||
<Resource uap:Scale="100" />
|
||||
<Resource uap:Scale="125" />
|
||||
<Resource uap:Scale="150" />
|
||||
<Resource uap:Scale="200" />
|
||||
<Resource uap:Scale="400" />
|
||||
</Resources>
|
||||
<Dependencies>
|
||||
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.14393.0" MaxVersionTested="10.0.16299.15" />
|
||||
</Dependencies>
|
||||
<Capabilities>
|
||||
<rescap:Capability Name="runFullTrust" />
|
||||
<Capability Name="internetClient" />
|
||||
</Capabilities>
|
||||
<Applications>
|
||||
<Application Id="Shotcut" Executable="shotcut.exe" EntryPoint="Windows.FullTrustApplication">
|
||||
<uap:VisualElements DisplayName="Shotcut" Description="Shotcut" BackgroundColor="transparent" Square150x150Logo="Assets\Square150x150Logo.png" Square44x44Logo="Assets\Square44x44Logo.png">
|
||||
<uap:DefaultTile Wide310x150Logo="Assets\Wide310x150Logo.png" Square310x310Logo="Assets\Square310x310Logo.png" Square71x71Logo="Assets\Square71x71Logo.png">
|
||||
<uap:ShowNameOnTiles>
|
||||
<uap:ShowOn Tile="square150x150Logo" />
|
||||
<uap:ShowOn Tile="wide310x150Logo" />
|
||||
<uap:ShowOn Tile="square310x310Logo" />
|
||||
</uap:ShowNameOnTiles>
|
||||
</uap:DefaultTile>
|
||||
</uap:VisualElements>
|
||||
<Extensions>
|
||||
<uap:Extension Category="windows.fileTypeAssociation">
|
||||
<uap:FileTypeAssociation Name=".mlt">
|
||||
<uap:DisplayName>MLT XML</uap:DisplayName>
|
||||
<uap:Logo>Assets\Square44x44Logo.png</uap:Logo>
|
||||
<uap:SupportedFileTypes>
|
||||
<uap:FileType ContentType="application/vnd.mlt+xml">.mlt</uap:FileType>
|
||||
</uap:SupportedFileTypes>
|
||||
</uap:FileTypeAssociation>
|
||||
</uap:Extension>
|
||||
</Extensions>
|
||||
</Application>
|
||||
</Applications>
|
||||
</Package>
|
||||
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 1.8 KiB |
|
After Width: | Height: | Size: 4.2 KiB |
|
After Width: | Height: | Size: 2.7 KiB |
|
After Width: | Height: | Size: 2.3 KiB |
|
After Width: | Height: | Size: 2.9 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 296 B |
|
After Width: | Height: | Size: 354 B |
|
After Width: | Height: | Size: 332 B |
|
After Width: | Height: | Size: 539 B |
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 148 B |
|
After Width: | Height: | Size: 148 B |
|
After Width: | Height: | Size: 175 B |
|
After Width: | Height: | Size: 175 B |
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 1.4 KiB |
|
After Width: | Height: | Size: 192 B |
|
After Width: | Height: | Size: 192 B |
|
After Width: | Height: | Size: 306 B |
|
After Width: | Height: | Size: 306 B |
|
After Width: | Height: | Size: 309 B |
|
After Width: | Height: | Size: 382 B |
|
After Width: | Height: | Size: 590 B |
|
After Width: | Height: | Size: 765 B |
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 325 B |
|
After Width: | Height: | Size: 368 B |
|
After Width: | Height: | Size: 369 B |
|
After Width: | Height: | Size: 1.1 KiB |
|
After Width: | Height: | Size: 1.5 KiB |
|
After Width: | Height: | Size: 1.3 KiB |
|
After Width: | Height: | Size: 1.2 KiB |
|
After Width: | Height: | Size: 1.6 KiB |
|
After Width: | Height: | Size: 2.2 KiB |
|
After Width: | Height: | Size: 5.7 KiB |
BIN
packaging/windows/Microsoft Store/PackageFiles/resources.pri
Normal file
44
packaging/windows/Microsoft Store/makepri.xml
Normal file
@@ -0,0 +1,44 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||
<resources targetOsVersion="10.0.0" majorVersion="1">
|
||||
<index root="\" startIndexAt="\">
|
||||
<default>
|
||||
<qualifier name="Language" value="en"/>
|
||||
<!-- <qualifier name="Contrast" value="standard"/> -->
|
||||
<!-- <qualifier name="Scale" value="400"/> -->
|
||||
<!-- <qualifier name="Scale" value="200"/> -->
|
||||
<!-- <qualifier name="Scale" value="150"/> -->
|
||||
<!-- <qualifier name="Scale" value="125"/> -->
|
||||
<!-- <qualifier name="Scale" value="100"/> -->
|
||||
<!-- <qualifier name="TargetSize" value="256"/> -->
|
||||
<!-- <qualifier name="TargetSize" value="16"/> -->
|
||||
<!-- <qualifier name="TargetSize" value="24"/> -->
|
||||
<!-- <qualifier name="TargetSize" value="32"/> -->
|
||||
<!-- <qualifier name="TargetSize" value="48"/> -->
|
||||
<!-- <qualifier name="HomeRegion" value="001"/> -->
|
||||
<!-- <qualifier name="TargetSize" value="256"/> -->
|
||||
<!-- <qualifier name="LayoutDirection" value="LTR"/> -->
|
||||
<!-- <qualifier name="Theme" value="dark"/> -->
|
||||
<!-- <qualifier name="AlternateForm" value="UNPLATED"/> -->
|
||||
<!-- <qualifier name="DXFeatureLevel" value="DX9"/> -->
|
||||
<!-- <qualifier name="Configuration" value=""/> -->
|
||||
<!-- <qualifier name="DeviceFamily" value="Universal"/> -->
|
||||
<!-- <qualifier name="Custom" value=""/> -->
|
||||
</default>
|
||||
<indexer-config type="folder" foldernameAsQualifier="true" filenameAsQualifier="true" qualifierDelimiter=".">
|
||||
<exclude type="tree" value="lib" doNotTraverse="true" doNotIndex="true"/>
|
||||
<exclude type="tree" value="share" doNotTraverse="true" doNotIndex="true"/>
|
||||
<exclude type="extension" value=".dll" doNotTraverse="true" doNotIndex="true"/>
|
||||
<exclude type="extension" value=".exe" doNotTraverse="true" doNotIndex="true"/>
|
||||
<exclude type="extension" value=".xml" doNotTraverse="true" doNotIndex="true"/>
|
||||
<exclude type="extension" value=".txt" doNotTraverse="true" doNotIndex="true"/>
|
||||
<exclude type="extension" value=".conf" doNotTraverse="true" doNotIndex="true"/>
|
||||
</indexer-config>
|
||||
<indexer-config type="resw" convertDotsToSlashes="true" initialPath=""/>
|
||||
<indexer-config type="resjson" initialPath=""/>
|
||||
<indexer-config type="PRI"/>
|
||||
</index>
|
||||
<!--<index startIndexAt="Start Index Here" root="Root Here">-->
|
||||
<!-- <indexer-config type="resfiles" qualifierDelimiter="."/>-->
|
||||
<!-- <indexer-config type="priinfo" emitStrings="true" emitPaths="true" emitEmbeddedData="true"/>-->
|
||||
<!--</index>-->
|
||||
</resources>
|
||||
BIN
packaging/windows/shotcut-logo-64.ico
Normal file
|
After Width: | Height: | Size: 2.6 KiB |
132
packaging/windows/shotcut.iss
Normal file
@@ -0,0 +1,132 @@
|
||||
; -- shotcut.iss --
|
||||
; Copyright (c) 2024-2025 Meltytech, LLC
|
||||
|
||||
; This program is free software: you can redistribute it and/or modify
|
||||
; it under the terms of the GNU General Public License as published by
|
||||
; the Free Software Foundation, either version 3 of the License, or
|
||||
; (at your option) any later version.
|
||||
;
|
||||
; This program is distributed in the hope that it will be useful,
|
||||
; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
; GNU General Public License for more details.
|
||||
;
|
||||
; You should have received a copy of the GNU General Public License
|
||||
; along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
[Setup]
|
||||
AppVersion=YY.MM.DD
|
||||
AppPublisher=Meltytech
|
||||
AppName=Shotcut
|
||||
WizardStyle=modern
|
||||
DefaultDirName={autopf}\Shotcut
|
||||
; Since no icons will be created in "{group}", we don't need the wizard
|
||||
; to ask for a Start Menu folder name:
|
||||
DisableProgramGroupPage=yes
|
||||
UninstallDisplayIcon={app}\shotcut.exe
|
||||
LicenseFile=Shotcut\COPYING.txt
|
||||
Compression=lzma2
|
||||
SolidCompression=no
|
||||
OutputDir=userdocs:Inno Setup Examples Output
|
||||
ChangesAssociations=yes
|
||||
PrivilegesRequiredOverridesAllowed=commandline dialog
|
||||
; "ArchitecturesAllowed=x64" specifies that Setup cannot run on
|
||||
; anything but x64.
|
||||
ArchitecturesAllowed=x64compatible
|
||||
; "ArchitecturesInstallIn64BitMode=x64" requests that the install be
|
||||
; done in "64-bit mode" on x64, meaning it should use the native
|
||||
; 64-bit Program Files directory and the 64-bit view of the registry.
|
||||
ArchitecturesInstallIn64BitMode=x64compatible
|
||||
AppMutex="Meltytech Shotcut Running Mutex"
|
||||
OutputBaseFilename=shotcut-setup
|
||||
UninstallDisplayName=Shotcut
|
||||
VersionInfoCopyright="Copyright (c) 2012-2026 Meltytech, LLC"
|
||||
WizardSmallImageFile="shotcut-logo-64.bmp"
|
||||
WizardImageStretch=yes
|
||||
ShowLanguageDialog=no
|
||||
|
||||
[Languages]
|
||||
Name: "en"; MessagesFile: "compiler:Default.isl"
|
||||
|
||||
[CustomMessages]
|
||||
en.StartMenu=Create Start Menu Shortcut
|
||||
en.AssociateMltXml=Associate *.mlt files with Shotcut
|
||||
en.DesktopIcon=Create Desktop Shortcut (Icon)
|
||||
en.ClearShotcutSettings=Remove Shotcut Settings From Registry
|
||||
en.InstallingShotcut=Installing Shotcut...
|
||||
en.StartShotcut=Start Shotcut
|
||||
|
||||
[Tasks]
|
||||
Name: startMenu; Description: "{cm:StartMenu}"
|
||||
Name: associateExtension; Description: "{cm:AssociateMltXml}"; Check: IsAdminInstallMode
|
||||
Name: desktopIcon; Description: "{cm:DesktopIcon}"; Flags: unchecked
|
||||
Name: removeSettings; Description: "{cm:ClearShotcutSettings}"; Flags: unchecked
|
||||
|
||||
[Files]
|
||||
Source: "Shotcut\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs uninsremovereadonly
|
||||
|
||||
[Icons]
|
||||
Name: "{autoprograms}\Shotcut"; Filename: "{app}\shotcut.exe"; Tasks: startMenu
|
||||
Name: "{autodesktop}\Shotcut"; Filename: "{app}\shotcut.exe"; Tasks: desktopIcon
|
||||
|
||||
[Registry]
|
||||
; Associate .mlt files (requires ChangesAssociations=yes)
|
||||
Root: HKCR; Subkey: ".mlt"; ValueType: string; ValueName: ""; ValueData: "Shotcut.mlt"; Flags: uninsdeletekey; Check: IsAdminInstallMode; Tasks: associateExtension
|
||||
Root: HKCR; Subkey: "Shotcut.mlt"; ValueType: string; ValueName: ""; ValueData: ""; Flags: uninsdeletekey; Check: IsAdminInstallMode; Tasks: associateExtension
|
||||
Root: HKCR; Subkey: "Shotcut.mlt\shell\open\command"; ValueType: string; ValueName: ""; ValueData: """{app}\shotcut.exe"" ""%1"""; Check: IsAdminInstallMode; Tasks: associateExtension
|
||||
Root: HKCU; Subkey: "Software\Meltytech\Shotcut"; Tasks: removeSettings; AfterInstall: RemoveShotcutSettings()
|
||||
|
||||
[Run]
|
||||
Filename: "{app}\shotcut.exe"; Description: "{cm:StartShotcut}"; Flags: postinstall nowait skipifsilent
|
||||
|
||||
[Code]
|
||||
var
|
||||
DownloadPage: TDownloadWizardPage;
|
||||
|
||||
procedure RemoveShotcutSettings();
|
||||
begin
|
||||
RegDeleteKeyIncludingSubkeys(HKEY_CURRENT_USER, 'Software\Meltytech\Shotcut');
|
||||
end;
|
||||
|
||||
procedure InitializeWizard();
|
||||
var
|
||||
CustomStatusLabel: TNewStaticText;
|
||||
begin
|
||||
// Hide radio buttons on License page and pre-select "accept" to enable "next" button
|
||||
WizardForm.LicenseAcceptedRadio.Checked := True;
|
||||
WizardForm.LicenseAcceptedRadio.Visible := False;
|
||||
WizardForm.LicenseNotAcceptedRadio.Visible := False;
|
||||
WizardForm.LicenseLabel1.Visible := False;
|
||||
WizardForm.LicenseMemo.Top := WizardForm.LicenseLabel1.Top;
|
||||
WizardForm.LicenseMemo.Height :=
|
||||
WizardForm.LicenseNotAcceptedRadio.Top +
|
||||
WizardForm.LicenseNotAcceptedRadio.Height -
|
||||
WizardForm.LicenseMemo.Top - ScaleY(5);
|
||||
|
||||
WizardForm.FilenameLabel.Visible := False;
|
||||
WizardForm.StatusLabel.Visible := False;
|
||||
|
||||
WizardForm.ProgressGauge.Top := WizardForm.InstallingPage.Height - ScaleY(60);
|
||||
|
||||
CustomStatusLabel := TNewStaticText.Create(WizardForm);
|
||||
CustomStatusLabel.Parent := WizardForm.InstallingPage;
|
||||
CustomStatusLabel.Caption := ExpandConstant('{cm:InstallingShotcut}');
|
||||
CustomStatusLabel.Font.Size := CustomStatusLabel.Font.Size + 4;
|
||||
CustomStatusLabel.Font.Style := [fsBold];
|
||||
CustomStatusLabel.AutoSize := True;
|
||||
CustomStatusLabel.Top :=
|
||||
WizardForm.ProgressGauge.Top - CustomStatusLabel.Height - ScaleY(8);
|
||||
CustomStatusLabel.Left :=
|
||||
WizardForm.ProgressGauge.Left +
|
||||
((WizardForm.ProgressGauge.Width - CustomStatusLabel.Width) div 2);
|
||||
end;
|
||||
|
||||
procedure CurPageChanged(CurPageID: Integer);
|
||||
begin
|
||||
if CurPageID = wpInstalling then
|
||||
begin;
|
||||
Log('Removing old installer registry keys');
|
||||
RegDeleteKeyIncludingSubkeys(HKEY_LOCAL_MACHINE, 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Shotcut');
|
||||
RegDeleteKeyIncludingSubkeys(HKEY_LOCAL_MACHINE, 'SOFTWARE\Shotcut');
|
||||
end;
|
||||
end;
|
||||
37
packaging/windows/shotcut.rc.in
Normal file
@@ -0,0 +1,37 @@
|
||||
#include <windows.h>
|
||||
|
||||
IDI_ICON1 ICON DISCARDABLE "shotcut-logo-64.ico"
|
||||
|
||||
VS_VERSION_INFO VERSIONINFO
|
||||
FILEVERSION ${PRODUCT_VERSION},0
|
||||
PRODUCTVERSION ${PRODUCT_VERSION},0
|
||||
FILEFLAGSMASK 0x3fL
|
||||
#ifdef _DEBUG
|
||||
FILEFLAGS VS_FF_DEBUG
|
||||
#else
|
||||
FILEFLAGS 0x0L
|
||||
#endif
|
||||
FILEOS VOS__WINDOWS32
|
||||
FILETYPE VFT_DLL
|
||||
FILESUBTYPE 0x0L
|
||||
BEGIN
|
||||
BLOCK "StringFileInfo"
|
||||
BEGIN
|
||||
BLOCK "040904b0"
|
||||
BEGIN
|
||||
VALUE "CompanyName", "Meltytech, LLC\0"
|
||||
VALUE "FileDescription", "Shotcut video editor\0"
|
||||
VALUE "FileVersion", "${SHOTCUT_VERSION}\0"
|
||||
VALUE "LegalCopyright", "Copyright (C) 2011-2026 Meltytech, LLC. All rights reserved.\0"
|
||||
VALUE "OriginalFilename", "shotcut.exe\0"
|
||||
VALUE "ProductName", "Shotcut\0"
|
||||
VALUE "ProductVersion", "${SHOTCUT_VERSION}\0"
|
||||
END
|
||||
END
|
||||
BLOCK "VarFileInfo"
|
||||
BEGIN
|
||||
VALUE "Translation", 0x0409, 1200
|
||||
END
|
||||
END
|
||||
/* End of Version info */
|
||||
|
||||