1
0
mirror of https://github.com/moparisthebest/Simba synced 2024-11-29 04:22:16 -05:00
Simba/Projects/SAMufasaGUI/testunit.pas
Wizzup? 55736bdaaf Enabled the colour picker button. (The Colour Picker is now functional)
The only thing left to do for the colour picker is to add an easy way to access the picker history. :) 



git-svn-id: http://www.villavu.com/repositories/merlijn/mufasa@80 3f818213-9676-44b0-a9b4-5e4c4e03d09d
2009-09-22 23:58:14 +00:00

127 lines
2.6 KiB
ObjectPascal

unit TestUnit;
{$mode objfpc}{$H+}
interface
uses
Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs,
StdCtrls, Menus, ComCtrls, SynEdit, SynHighlighterPas, SynMemo,
//Client,
MufasaTypes,
mmlpsthread,
mmlthread,
window, // for the comp picker and selector
colourpicker
;
type
{ TForm1 }
TForm1 = class(TForm)
Mufasa_Image_List: TImageList;
MainMenu1: TMainMenu;
Memo1: TMemo;
MenuItemScript: TMenuItem;
MenuItemRun: TMenuItem;
SynEdit1: TSynEdit;
SynFreePascalSyn1: TSynFreePascalSyn;
ToolBar1: TToolBar;
TB_Run: TToolButton;
TB_Pause: TToolButton;
TB_Stop: TToolButton;
ToolButton1: TToolButton;
TB_ReloadPlugins: TToolButton;
TB_WAT: TToolButton;
TB_NewTab: TToolButton;
TB_CloseTab: TToolButton;
ToolButton4: TToolButton;
TB_ClearDebug: TToolButton;
TB_PickColour: TToolButton;
TB_SelectClient: TToolButton;
ToolButton8: TToolButton;
TB_Convert: TToolButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure MenuItemRunClick(Sender: TObject);
procedure PickColorEvent(Sender: TObject);
private
{ private declarations }
public
Window: TMWindow;
Picker: TMColorPicker;
{ public declarations }
end;
var
Form1: TForm1;
implementation
uses
lclintf,plugins;
{ TForm1 }
procedure Run;
Var
MMLPSThread : TMMLPSThread;
begin
MMLPSThread := TMMLPSThread.Create(True);
MMLPSThread.SetPSScript(Form1.SynEdit1.Lines.Text);
MMLPSThread.SetDebug(Form1.Memo1);
// This doesn't actually set the Client's MWindow to the passed window, it
// only copies the current set window handle.
MMLPSThread.Client.MWindow.SetWindow(Form1.Window);
MMLPSThread.Resume;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin;
Run;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Window := TMWindow.Create;
Picker := TMColorPicker.Create(Window);
MainDir:= ExtractFileDir(Application.ExeName);
PluginsGlob := TMPlugins.Create;
PluginsGlob.PluginDirs.Add(ExpandFileName(MainDir + DS + '..' + DS + '..'+ DS + 'Plugins'+ DS));
// SynMemo1.sc
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
Picker.Free;
Window.Free;
PluginsGlob.Free;
end;
procedure TForm1.MenuItemRunClick(Sender: TObject);
begin
Run;
end;
procedure TForm1.PickColorEvent(Sender: TObject);
var
c, x, y: Integer;
begin
Picker.Pick(c, x, y);
writeln('Picked colour: ' + inttostr(c) + ' at (' + inttostr(x) + ', ' + inttostr(y) + ')');
end;
initialization
{$I testunit.lrs}
end.