mirror of
https://gitlab.gnome.org/GNOME/gimp.git
synced 2025-07-03 09:23:24 +00:00
build/windows: Add Repair mode to our Installer
Closes: #1382 We do not allow multiple installs under the same GIMP_MUTEX_VERSION. That is a good thing but depends on the partition of the install dir. Otherwise, if the partition is lost, this become a registry nightmare. That nightmare is a more 5 years old issue that tormented even one of our past maintainers, Michael Natterer. So, let's make possible to fix GIMP installation when the previous install dir can't be accessed.
This commit is contained in:
parent
cbe2f6bec2
commit
eab5e0615d
2 changed files with 25 additions and 9 deletions
|
@ -204,7 +204,7 @@ PrivilegesRequiredOverridesAllowed=dialog
|
|||
ShowLanguageDialog=auto
|
||||
DisableWelcomePage=no
|
||||
InfoBeforeFile=gpl+python.rtf
|
||||
DisableDirPage=auto
|
||||
DisableDirPage=no
|
||||
FlatComponentsList=yes
|
||||
DisableProgramGroupPage=yes
|
||||
AllowNoIcons=no
|
||||
|
@ -755,9 +755,11 @@ begin
|
|||
begin
|
||||
WizardForm.NextButton.Visible := False;
|
||||
|
||||
btnInstall.Visible := True;
|
||||
if not (InstallType = 'itRepair') then begin
|
||||
btnInstall.Visible := True;
|
||||
end;
|
||||
btnInstall.TabOrder := 1;
|
||||
if InstallType = 'itInstall' then begin
|
||||
if (InstallType = 'itRepair') or (InstallType = 'itInstall') then begin
|
||||
btnCustomize.Visible := True;
|
||||
end;
|
||||
|
||||
|
@ -772,8 +774,10 @@ end;
|
|||
procedure CleanUpCustomWelcome();
|
||||
begin
|
||||
WizardForm.NextButton.Visible := True;
|
||||
btnInstall.Visible := False;
|
||||
if InstallType = 'itInstall' then begin
|
||||
if not (InstallType = 'itRepair') then begin
|
||||
btnInstall.Visible := False;
|
||||
end;
|
||||
if (InstallType = 'itRepair') or (InstallType = 'itInstall') then begin
|
||||
btnCustomize.Visible := False;
|
||||
end;
|
||||
|
||||
|
@ -809,6 +813,8 @@ var i,ButtonWidth: Integer;
|
|||
begin
|
||||
DebugMsg('InitCustomPages','wpLicense');
|
||||
|
||||
CheckInstallType;
|
||||
|
||||
btnInstall := TNewButton.Create(WizardForm);
|
||||
with btnInstall do
|
||||
begin
|
||||
|
@ -817,7 +823,6 @@ begin
|
|||
Height := WizardForm.NextButton.Height;
|
||||
Left := WizardForm.NextButton.Left;
|
||||
Top := WizardForm.NextButton.Top;
|
||||
CheckInstallType;
|
||||
if InstallType = 'itInstall' then begin
|
||||
Caption := CustomMessage('Install');
|
||||
end else if InstallType = 'itReinstall' then begin
|
||||
|
@ -839,7 +844,11 @@ begin
|
|||
Left := 0;
|
||||
Top := 0;
|
||||
AutoSize := True;
|
||||
Caption := CustomMessage('Customize');
|
||||
if InstallType = 'itRepair' then begin
|
||||
Caption := CustomMessage('Repair');
|
||||
end else if InstallType = 'itInstall' then begin
|
||||
Caption := CustomMessage('Customize');
|
||||
end;
|
||||
end;
|
||||
|
||||
btnCustomize := TNewButton.Create(WizardForm);
|
||||
|
@ -857,8 +866,12 @@ begin
|
|||
Top := WizardForm.NextButton.Top;
|
||||
Visible := False;
|
||||
|
||||
Caption := CustomMessage('Customize');
|
||||
|
||||
if InstallType = 'itRepair' then begin
|
||||
Caption := CustomMessage('Repair');
|
||||
end else if InstallType = 'itInstall' then begin
|
||||
Caption := CustomMessage('Customize');
|
||||
end;
|
||||
|
||||
OnClick := @CustomizeOnClick;
|
||||
end;
|
||||
|
||||
|
|
|
@ -47,6 +47,9 @@
|
|||
<value>E&xit</value>
|
||||
</config>
|
||||
|
||||
<config name="Repair">
|
||||
<value>&Repair</value>
|
||||
</config>
|
||||
<config name="Install">
|
||||
<value>&Install</value>
|
||||
</config>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue