More tweaks on the update feature.

git-svn-id: trunk@53597 -
This commit is contained in:
balazs 2016-12-08 07:40:45 +00:00
parent 447ec91e26
commit 1b67af9431
7 changed files with 32 additions and 18 deletions

2
.gitattributes vendored
View File

@ -3249,6 +3249,7 @@ components/onlinepackagemanager/images/ToolBar/Dis/04[!!-~]Update.png -text svne
components/onlinepackagemanager/images/ToolBar/Dis/05[!!-~]CleanUp.png -text svneol=unset#image/png components/onlinepackagemanager/images/ToolBar/Dis/05[!!-~]CleanUp.png -text svneol=unset#image/png
components/onlinepackagemanager/images/ToolBar/Dis/06[!!-~]Repository.png -text svneol=unset#image/png components/onlinepackagemanager/images/ToolBar/Dis/06[!!-~]Repository.png -text svneol=unset#image/png
components/onlinepackagemanager/images/ToolBar/Dis/07[!!-~]Options.png -text svneol=unset#image/png components/onlinepackagemanager/images/ToolBar/Dis/07[!!-~]Options.png -text svneol=unset#image/png
components/onlinepackagemanager/images/ToolBar/Dis/08[!!-~]Help.png -text svneol=unset#image/png
components/onlinepackagemanager/images/ToolBar/Nor/00[!!-~]Refresh.png -text svneol=unset#image/png components/onlinepackagemanager/images/ToolBar/Nor/00[!!-~]Refresh.png -text svneol=unset#image/png
components/onlinepackagemanager/images/ToolBar/Nor/01[!!-~]Filter.png -text svneol=unset#image/png components/onlinepackagemanager/images/ToolBar/Nor/01[!!-~]Filter.png -text svneol=unset#image/png
components/onlinepackagemanager/images/ToolBar/Nor/02[!!-~]Download.png -text svneol=unset#image/png components/onlinepackagemanager/images/ToolBar/Nor/02[!!-~]Download.png -text svneol=unset#image/png
@ -3257,6 +3258,7 @@ components/onlinepackagemanager/images/ToolBar/Nor/04[!!-~]Update.png -text svne
components/onlinepackagemanager/images/ToolBar/Nor/05[!!-~]CleanUp.png -text svneol=unset#image/png components/onlinepackagemanager/images/ToolBar/Nor/05[!!-~]CleanUp.png -text svneol=unset#image/png
components/onlinepackagemanager/images/ToolBar/Nor/06[!!-~]Repository.png -text svneol=unset#image/png components/onlinepackagemanager/images/ToolBar/Nor/06[!!-~]Repository.png -text svneol=unset#image/png
components/onlinepackagemanager/images/ToolBar/Nor/07[!!-~]Options.png -text svneol=unset#image/png components/onlinepackagemanager/images/ToolBar/Nor/07[!!-~]Options.png -text svneol=unset#image/png
components/onlinepackagemanager/images/ToolBar/Nor/08[!!-~]Help.png -text svneol=unset#image/png
components/onlinepackagemanager/images/Tree_Buttons/00[!!-~]Repository.png -text svneol=unset#image/png components/onlinepackagemanager/images/Tree_Buttons/00[!!-~]Repository.png -text svneol=unset#image/png
components/onlinepackagemanager/images/Tree_Buttons/01[!!-~]PackageName.png -text svneol=unset#image/png components/onlinepackagemanager/images/Tree_Buttons/01[!!-~]PackageName.png -text svneol=unset#image/png
components/onlinepackagemanager/images/Tree_Buttons/02[!!-~]PackageFile.png -text svneol=unset#image/png components/onlinepackagemanager/images/Tree_Buttons/02[!!-~]PackageFile.png -text svneol=unset#image/png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

View File

@ -90,6 +90,7 @@ resourcestring
rsMainFrm_VSTText_PackageState2 = 'Extracted'; rsMainFrm_VSTText_PackageState2 = 'Extracted';
rsMainFrm_VSTText_PackageState3 = 'Installed'; rsMainFrm_VSTText_PackageState3 = 'Installed';
rsMainFrm_VSTText_PackageState4 = 'Up to date'; rsMainFrm_VSTText_PackageState4 = 'Up to date';
rsMainFrm_VSTText_PackageState5 = 'New updates available';
rsMainFrm_VSTText_PackageCategory0 = 'Charts and Graphs'; rsMainFrm_VSTText_PackageCategory0 = 'Charts and Graphs';
rsMainFrm_VSTText_PackageCategory1 = 'Cryptography'; rsMainFrm_VSTText_PackageCategory1 = 'Cryptography';
rsMainFrm_VSTText_PackageCategory2 = 'DataControls'; rsMainFrm_VSTText_PackageCategory2 = 'DataControls';

View File

@ -537,7 +537,7 @@ end;
procedure TMainFrm.tbRefreshClick(Sender: TObject); procedure TMainFrm.tbRefreshClick(Sender: TObject);
begin begin
Updates.Paused := True; Updates.PauseUpdate;
VisualTree.VST.Clear; VisualTree.VST.Clear;
VisualTree.VST.Invalidate; VisualTree.VST.Invalidate;
GetPackageList; GetPackageList;
@ -576,7 +576,7 @@ begin
if CanGo then if CanGo then
begin begin
Updates.Paused := True; Updates.PauseUpdate;
Options.LastDownloadDir := DstDir; Options.LastDownloadDir := DstDir;
Options.Changed := True; Options.Changed := True;
PackageAction := paDownloadTo; PackageAction := paDownloadTo;
@ -598,7 +598,7 @@ begin
end; end;
end; end;
SerializablePackages.RemoveErrorState; SerializablePackages.RemoveErrorState;
Updates.Paused := False; Updates.StartUpdate;
end; end;
procedure TMainFrm.tbUpdateClick(Sender: TObject); procedure TMainFrm.tbUpdateClick(Sender: TObject);
@ -630,7 +630,7 @@ begin
if CanGo then if CanGo then
begin begin
Updates.Paused := True; Updates.PauseUpdate;
PackageAction := paUpdate; PackageAction := paUpdate;
VisualTree.UpdatePackageStates; VisualTree.UpdatePackageStates;
if SerializablePackages.DownloadCount > 0 then if SerializablePackages.DownloadCount > 0 then
@ -678,7 +678,7 @@ begin
if not NeedToRebuild then if not NeedToRebuild then
begin begin
SerializablePackages.RemoveErrorState; SerializablePackages.RemoveErrorState;
Updates.Paused := False; Updates.StartUpdate;
end; end;
end; end;
@ -709,7 +709,7 @@ begin
if CanGo then if CanGo then
begin begin
Updates.Paused := True; Updates.PauseUpdate;
PackageAction := paInstall; PackageAction := paInstall;
VisualTree.UpdatePackageStates; VisualTree.UpdatePackageStates;
if SerializablePackages.DownloadCount > 0 then if SerializablePackages.DownloadCount > 0 then
@ -758,7 +758,7 @@ begin
if not NeedToRebuild then if not NeedToRebuild then
begin begin
SerializablePackages.RemoveErrorState; SerializablePackages.RemoveErrorState;
Updates.Paused := False; Updates.StartUpdate;
end; end;
end; end;

View File

@ -87,8 +87,9 @@ type
destructor Destroy; override; destructor Destroy; override;
procedure StartUpdate; procedure StartUpdate;
procedure StopUpdate; procedure StopUpdate;
procedure PauseUpdate;
published published
property Paused: Boolean read FPaused write SetPaused; property IsPaused: Boolean read FPaused;
property OnUpdate: TNotifyEvent read FOnUpdate write FOnUpdate; property OnUpdate: TNotifyEvent read FOnUpdate write FOnUpdate;
end; end;
@ -403,9 +404,16 @@ end;
procedure TUpdates.StopUpdate; procedure TUpdates.StopUpdate;
begin begin
FNeedToBreak := True; FNeedToBreak := True;
Save;
FTimer.StopTimer; FTimer.StopTimer;
FStarted := False; FStarted := False;
FHTTPClient.NeedToBreak := True; FHTTPClient.NeedToBreak := True;
end;
procedure TUpdates.PauseUpdate;
begin
FPaused := True;
Save; Save;
end; end;

View File

@ -1010,12 +1010,11 @@ begin
ParentNode := Node^.Parent; ParentNode := Node^.Parent;
ParentData := FVST.GetNodeData(ParentNode); ParentData := FVST.GetNodeData(ParentNode);
Data^.HasUpdate := (Data^.UpdateVersion > Data^.InstalledVersion) or (ParentData^.ForceUpadate); Data^.HasUpdate := (Data^.UpdateVersion > Data^.InstalledVersion) or (ParentData^.ForceUpadate);
if Data^.HasUpdate then ParentData^.HasUpdate := Data^.HasUpdate;
begin FVST.ReinitNode(Node, False);
ParentData^.HasUpdate := True; FVST.RepaintNode(Node);
FVST.ReinitNode(ParentNode, False); FVST.ReinitNode(ParentNode, False);
FVST.RepaintNode(ParentNode); FVST.RepaintNode(ParentNode);
end;
end; end;
end; end;
end; end;
@ -1310,10 +1309,13 @@ begin
1: CellText := rsMainFrm_VSTText_PackageState1; 1: CellText := rsMainFrm_VSTText_PackageState1;
2: CellText := rsMainFrm_VSTText_PackageState2; 2: CellText := rsMainFrm_VSTText_PackageState2;
3: begin 3: begin
if Data^.InstalledVersion >= Data^.UpdateVersion then if Data^.HasUpdate then
CellText := rsMainFrm_VSTText_PackageState4 CellText := rsMainFrm_VSTText_PackageState5
else else
CellText := rsMainFrm_VSTText_PackageState3 if (Data^.UpdateVersion = '') or (Data^.UpdateVersion = Data^.InstalledVersion) then
CellText := rsMainFrm_VSTText_PackageState4
else
CellText := rsMainFrm_VSTText_PackageState3
end; end;
end; end;
3: CellText := GetDisplayString(Data^.Description); 3: CellText := GetDisplayString(Data^.Description);
@ -1421,7 +1423,8 @@ begin
else else
TargetCanvas.Font.Color := clWhite; TargetCanvas.Font.Color := clWhite;
end end
else if (Data^.DataType = 2) and (Data^.InstalledVersion >= Data^.UpdateVersion) then else if (Data^.DataType = 2) and (not Data^.HasUpdate) and (Data^.InstalledVersion <> '') and
((Data^.UpdateVersion = '') or (Data^.UpdateVersion = Data^.InstalledVersion)) then
begin begin
TargetCanvas.Font.Style := TargetCanvas.Font.Style + [fsBold]; TargetCanvas.Font.Style := TargetCanvas.Font.Style + [fsBold];
if Node <> Sender.FocusedNode then if Node <> Sender.FocusedNode then