| 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 |