53 |
|
procedure listMouseDown(Sender: TObject; Button: TMouseButton; |
54 |
|
Shift: TShiftState; X, Y: Integer); |
55 |
|
|
56 |
– |
procedure FormResize(Sender: TObject); |
56 |
|
procedure FormClose(Sender: TObject; var Action: TCloseAction); |
57 |
|
procedure popup_importClick(Sender: TObject); |
58 |
|
procedure popup_exportClick(Sender: TObject); |
218 |
|
finfo: TFileInfo; |
219 |
|
fs: TFileStream; |
220 |
|
begin |
221 |
< |
id := ConManager.Connection[FConnectionID].ExtractFileIDOfName(filelist.Items.Strings[filelist.ItemIndex]); |
223 |
< |
finfo := ConManager.Connection[FConnectionID].GetFileInfo(id); |
224 |
< |
|
225 |
< |
importd.Filter := 'Files of matching extension (*.' + finfo.Extension + ')|*.' + |
226 |
< |
finfo.Extension + '|All files|*.*'; |
227 |
< |
if importd.Execute then |
221 |
> |
if CR_EditDat in ConManager.Connection[FConnectionID].ChangeRights then |
222 |
|
begin |
223 |
< |
fs := TFileStream.Create(importd.FileName, fmOpenRead); |
224 |
< |
if fs.Size <> finfo.Size then |
225 |
< |
ShowMessage('Can''t import ' + ExtractFilename(importd.FileName) + |
226 |
< |
', file has to have same size as file in .dat.' + CrLf + |
227 |
< |
'Size of file in .dat: ' + FormatFileSize(finfo.Size) + CrLf + |
228 |
< |
'Size of chosen file: ' + FormatFileSize(fs.Size)) |
229 |
< |
else begin |
223 |
> |
id := ConManager.Connection[FConnectionID].ExtractFileIDOfName(filelist.Items.Strings[filelist.ItemIndex]); |
224 |
> |
finfo := ConManager.Connection[FConnectionID].GetFileInfo(id); |
225 |
> |
|
226 |
> |
importd.Filter := 'Files of matching extension (*.' + finfo.Extension + ')|*.' + |
227 |
> |
finfo.Extension + '|All files|*.*'; |
228 |
> |
if importd.Execute then |
229 |
> |
begin |
230 |
> |
fs := TFileStream.Create(importd.FileName, fmOpenRead); |
231 |
> |
if fs.Size <> finfo.Size then |
232 |
> |
begin |
233 |
> |
if not (CR_ResizeDat in ConManager.Connection[FConnectionID].ChangeRights) then |
234 |
> |
begin |
235 |
> |
ShowMessage('Can''t import ' + ExtractFilename(importd.FileName) + |
236 |
> |
', file has to have same size as file in .dat with this backend.' + CrLf + |
237 |
> |
'Size of file in .dat: ' + FormatFileSize(finfo.Size) + CrLf + |
238 |
> |
'Size of chosen file: ' + FormatFileSize(fs.Size)); |
239 |
> |
Exit; |
240 |
> |
end else begin |
241 |
> |
if MessageBox(Self.Handle, |
242 |
> |
PChar('File has different size from the file in the .dat.' + CrLf + |
243 |
> |
'Size of file in .dat: ' + FormatFileSize(finfo.Size) + CrLf + |
244 |
> |
'Size of chosen file: ' + FormatFileSize(fs.Size) + CrLf + |
245 |
> |
'Replace anyway?'), PChar('Different size'), MB_YESNO + MB_ICONWARNING) = ID_NO then |
246 |
> |
begin |
247 |
> |
Exit; |
248 |
> |
end; |
249 |
> |
end; |
250 |
> |
end; |
251 |
|
ConManager.Connection[FConnectionID].UpdateDatFile(id, fs); |
252 |
|
Self.listClick(Self); |
253 |
+ |
fs.Free; |
254 |
|
end; |
255 |
< |
fs.Free; |
255 |
> |
end else begin |
256 |
> |
ShowMessage('Editing .dat-contents not allowed with this backend.'); |
257 |
|
end; |
258 |
|
end; |
259 |
|
|
465 |
|
end; |
466 |
|
|
467 |
|
|
451 |
– |
procedure TForm_ToolTemplate.FormResize(Sender: TObject); |
452 |
– |
begin |
453 |
– |
if Self.Width < 300 then |
454 |
– |
Self.Width := 300; |
455 |
– |
if Self.Height < 200 then |
456 |
– |
Self.Height := 200; |
457 |
– |
end; |
458 |
– |
|
459 |
– |
|
460 |
– |
|
468 |
|
function TForm_ToolTemplate.GetToolCloseable: Boolean; |
469 |
|
begin |
470 |
|
if Assigned(FOnCheckCloseable) then |