1
0
mirror of https://github.com/moparisthebest/Simba synced 2024-12-02 13:52:18 -05:00
Simba/Projects/lape-wrappers/wrapfiles.pas
Merlijn Wajer 7f00bb6805 Squashed commit of the following:
commit 7426db160f
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Fri Aug 5 11:40:27 2011 +0200

    Lape: Update HEAD.

commit 6fa1740ea7
Author: Niels <niels.a.d@gmail.com>
Date:   Thu Aug 4 23:07:35 2011 +0200

    Simba compiles again now.

commit 27b1c42b6a
Author: Niels <niels.a.d@gmail.com>
Date:   Thu Aug 4 00:31:28 2011 +0200

    Little bugfix in lape wrapper generator + new wrappers.

commit f46f841658
Author: Niels <niels.a.d@gmail.com>
Date:   Thu Aug 4 00:00:54 2011 +0200

    Commented functions that cannot be imported yet for lape.

commit b7aa543b6b
Author: Niels <niels.a.d@gmail.com>
Date:   Wed Aug 3 23:54:54 2011 +0200

    New lape wrappers.

commit ecfc435fab
Author: Niels <niels.a.d@gmail.com>
Date:   Wed Aug 3 23:49:54 2011 +0200

    Fixed a bug in lape wrapper generation.

commit 2d9d65000b
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Wed Aug 3 21:52:01 2011 +0200

    Lape: Most types added. Interpreter starts.

    Lacks a few methods, but most tests just work. :-)

commit bf0f806ecf
Author: Niels <niels.a.d@gmail.com>
Date:   Wed Aug 3 21:06:56 2011 +0200

    Added debug message for when initializing the interpreter fails.

commit a143016beb
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Wed Aug 3 20:30:11 2011 +0200

    Lape-wrappers: Fix by nielsie95.

commit 9deb9a1b67
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Wed Aug 3 20:29:48 2011 +0200

    Lape: Add wrappers.

commit 510674570b
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Wed Aug 3 20:12:26 2011 +0200

    Lape: Update HEAD.

commit 8260840b89
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Wed Aug 3 14:34:48 2011 +0200

    Lape: Update HEAD.

commit 64bf115d30
Merge: 0701e91 aaafd6b
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Mon Aug 1 19:26:15 2011 +0200

    Merge branch 'master' into lape-integration

commit 0701e911d1
Merge: 26693f7 a20a31a
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Sun Jul 31 18:11:58 2011 +0200

    Merge branch 'master' into lape-integration

commit 26693f7d4d
Merge: e124ae3 da0de6e
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Sat Jul 30 00:16:12 2011 +0200

    Merge branch 'master' into lape-integration

commit e124ae396a
Merge: 4c6f304 c1051ef
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Thu Jul 28 20:53:01 2011 +0200

    Merge branch 'lape-integration' of github.com:MerlijnWajer/Simba into lape-integration

commit 4c6f30462c
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Thu Jul 28 20:52:13 2011 +0200

    Lape: Update head.

commit 2d8fdc4d7a
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Thu Jul 28 20:08:01 2011 +0200

    Lape: Add Wrappers project.

commit e4f8e06f1c
Merge: 7228a88 1fd51ff
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Thu Jul 28 20:03:39 2011 +0200

    Merge branch 'master' into lape-integration

    Conflicts:
    	Projects/Simba/Simba.inc

commit c1051efbeb
Merge: 7228a88 b83a277
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Sat Jul 23 13:41:15 2011 -0700

    Merge pull request #30 from Dgby714/lape-integration

    TLPThread Update

commit 7228a888c4
Merge: ad2e3ca e63dcbc
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Sat Jul 23 21:54:58 2011 +0200

    Merge branch 'master' into lape-integration

    Conflicts:
    	Projects/Simba/Simba.inc
    	Projects/Simba/simbaunit.pas
    	Units/lape

commit b83a277502
Author: John P (Dgby714) <Dgby714@gmail.com>
Date:   Thu Jul 7 12:22:51 2011 -0400

    TLPThread Update
    	- Init Result to False in OnHandleDirective.
    	- Override lape _writeln, Now adds to Debug memo.

commit ad2e3ca3c3
Merge: 1a22452 c79eadf
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Sat Jun 25 15:50:58 2011 -0700

    Merge pull request #25 from Dgby714/la-pe

    Lape

commit 1a224529f3
Merge: 5dc7611 89f1a9b
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Sun Jun 26 00:49:03 2011 +0200

    Merge branch 'master' into lape-integration

commit c79eadf1ef
Author: John P (Dgby714) <Dgby714@gmail.com>
Date:   Sat Jun 25 18:43:17 2011 -0400

    TLPThread update, Uncommented Lape Defines

commit 4d15ee07d5
Merge: 89f1a9b 5dc7611
Author: John P (Dgby714) <Dgby714@gmail.com>
Date:   Sat Jun 25 17:23:24 2011 -0400

    Merge branch 'lape-integration' of git://github.com/MerlijnWajer/Simba into la-pe

commit 5dc7611dba
Author: John P (Dgby714) <Dgby714@gmail.com>
Date:   Sat Jun 25 07:35:20 2011 -0400

    TLPThread update, Lape settings, Add Lape unit to OtherUnitFiles

commit e5812a8000
Author: John P (Dgby714) <Dgby714@gmail.com>
Date:   Thu Jun 16 21:26:03 2011 -0400

    Lape Integration, TLPThread work

commit ecab4d5801
Author: Merlijn Wajer <merlijn@wizzup.org>
Date:   Sat Jun 25 17:45:24 2011 +0200

    Lape: Add lape submodule.
2011-08-05 13:04:52 +02:00

128 lines
2.8 KiB
ObjectPascal

unit wrapfiles;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
EditBtn;
type
{ TWrapFilesForm }
TWrapFilesForm = class(TForm)
dbgMemo: TMemo;
FileNameEdit1: TFileNameEdit;
Label1: TLabel;
wrpBtn: TButton;
SaveDirEdit: TDirectoryEdit;
FileButton: TButton;
FileBox: TListBox;
FileDialog: TOpenDialog;
SaveDirLabel: TLabel;
procedure FileButtonClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure wrpBtnClick(Sender: TObject);
private
{ private declarations }
public
{ public declarations }
end;
var
WrapFilesForm: TWrapFilesForm;
implementation
uses
Main;
{$R *.lfm}
{ TWrapFilesForm }
procedure TWrapFilesForm.FileButtonClick(Sender: TObject);
begin
if FileDialog.Execute then
begin
SaveDirEdit.Directory := ExtractFileDir(FileDialog.FileName);
FileBox.Items.AddStrings(FileDialog.Files);
end;
end;
procedure TWrapFilesForm.FormCreate(Sender: TObject);
begin
end;
procedure TWrapFilesForm.wrpBtnClick(Sender: TObject);
procedure dbg(s : string);
begin
dbgMemo.Lines.Add(s);
end;
var
i : integer;
Input, Output,Procnames : TStringList;
NewFile : string;
YesToAll, NoToAll : boolean;
begin
YesToAll:= false;
NoToAll:= false;
if not DirectoryExists(SaveDirEdit.Directory) then
begin
dbg(format('Dir %s does not exist',[SaveDirEdit.Directory]));
exit;
end;
if FileBox.Items.Count < 1 then
begin
dbg('No files loaded');
exit;
end;
Procnames := TStringList.Create;
for i := 0 to FileBox.Items.Count - 1 do
begin
if not FileExists(filebox.items[i]) then
begin
dbg(format('File[%s] does not exist',[FileBox.items[i]]));
continue;
end;
NewFile := SaveDirEdit.Directory + DirectorySeparator + ExtractFileName(FileBox.Items[i]);
if not YesToAll and FileExists(NewFile) then
begin
if NoToAll then
Continue;
case MessageDlg('File already exists',Format('Do you want to overwrite the file %s',[NewFile]),
mtConfirmation,[mbYes,mbYesToAll,mbNo,mbNoToAll],0) of
mrNo : Continue;
mrNoToAll : begin
NoToAll:= True;
Continue;
end;
mrYesToAll : YesToAll:= true;
end;
dbg(BoolToStr(YesToAll,true));
end;
dbg(NewFile);
try
Input := TStringList.Create;
Input.LoadFromFile(filebox.items[i]);
Output := TStringList.Create;
ConvertRT(Input,dbgMemo.Lines,Output,Procnames);
Output.SaveToFile(NewFile);
Input.free;
Output.free;
except
dbg('Something went wrong');
end;
end;
dbg(Procnames.Text);
if FileNameEdit1.Text <> '' then
Procnames.SaveToFile(FileNameEdit1.text);
Procnames.Free;
end;
end.