You've already forked lazarus-ccr
iphonelazext: fixed menu checker <-> project options relations
git-svn-id: https://svn.code.sf.net/p/lazarus-ccr/svn@1124 8e941d3f-bd1b-0410-a28a-d453659cc2b4
This commit is contained in:
@@ -23,7 +23,7 @@ uses
|
|||||||
Classes, SysUtils,
|
Classes, SysUtils,
|
||||||
Graphics, Controls, Forms, Dialogs, FileUtil,
|
Graphics, Controls, Forms, Dialogs, FileUtil,
|
||||||
{Lazarus Interface}
|
{Lazarus Interface}
|
||||||
LazIDEIntf, MenuIntf, ProjectIntf, IDEOptionsIntf, PackageIntf, IDEMsgIntf,
|
LazIDEIntf, MenuIntf, ProjectIntf, IDEOptionsIntf, IDEMsgIntf,
|
||||||
|
|
||||||
project_iphone_options, xcodetemplate,
|
project_iphone_options, xcodetemplate,
|
||||||
|
|
||||||
@@ -44,6 +44,7 @@ type
|
|||||||
function ProjectBuilding(Sender: TObject): TModalResult;
|
function ProjectBuilding(Sender: TObject): TModalResult;
|
||||||
function ProjectOpened(Sender: TObject; AProject: TLazProject): TModalResult;
|
function ProjectOpened(Sender: TObject; AProject: TLazProject): TModalResult;
|
||||||
function WriteIconTo(const FullName: String): Boolean;
|
function WriteIconTo(const FullName: String): Boolean;
|
||||||
|
procedure OnProjOptionsChanged(Sender: TObject);
|
||||||
public
|
public
|
||||||
isiPhoneMenu :TIDEMenuCommand;
|
isiPhoneMenu :TIDEMenuCommand;
|
||||||
constructor Create;
|
constructor Create;
|
||||||
@@ -205,6 +206,7 @@ begin
|
|||||||
inherited Create;
|
inherited Create;
|
||||||
LazarusIDE.AddHandlerOnProjectOpened(@ProjectOpened);
|
LazarusIDE.AddHandlerOnProjectOpened(@ProjectOpened);
|
||||||
LazarusIDE.AddHandlerOnProjectBuilding(@ProjectBuilding);
|
LazarusIDE.AddHandlerOnProjectBuilding(@ProjectBuilding);
|
||||||
|
ProjOptions.OnAfterWrite:=@OnProjOptionsChanged;
|
||||||
|
|
||||||
RegisterIDEMenuCommand(itmProjectWindowSection, 'mnuiPhoneSeparator', '-', nil, nil);
|
RegisterIDEMenuCommand(itmProjectWindowSection, 'mnuiPhoneSeparator', '-', nil, nil);
|
||||||
|
|
||||||
@@ -294,6 +296,11 @@ begin
|
|||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TiPhoneExtension.OnProjOptionsChanged(Sender: TObject);
|
||||||
|
begin
|
||||||
|
isiPhoneMenu.Checked:=ProjOptions.isIPhoneApp;
|
||||||
|
end;
|
||||||
|
|
||||||
procedure TiPhoneExtension.UpdateXCode(Sender: TObject);
|
procedure TiPhoneExtension.UpdateXCode(Sender: TObject);
|
||||||
var
|
var
|
||||||
templates : TStringList;
|
templates : TStringList;
|
||||||
@@ -422,8 +429,8 @@ procedure TiPhoneExtension.isProjectClicked(Sender: TObject);
|
|||||||
begin
|
begin
|
||||||
if not Assigned(Sender) or not Assigned(LazarusIDE.ActiveProject) then Exit;
|
if not Assigned(Sender) or not Assigned(LazarusIDE.ActiveProject) then Exit;
|
||||||
TIDEMenuCommand(Sender).Checked:=not TIDEMenuCommand(Sender).Checked;
|
TIDEMenuCommand(Sender).Checked:=not TIDEMenuCommand(Sender).Checked;
|
||||||
ProjOptions.isIPhoneApp:=TIDEMenuCommand(Sender).Checked;
|
ProjOptions.isiPhoneApp:=TIDEMenuCommand(Sender).Checked;
|
||||||
//SwitchProject(TIDEMenuCommand(Sender).Checked);
|
ProjOptions.Save;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure Register;
|
procedure Register;
|
||||||
|
@@ -40,6 +40,8 @@ type
|
|||||||
procedure FrameClick(Sender: TObject);
|
procedure FrameClick(Sender: TObject);
|
||||||
private
|
private
|
||||||
{ private declarations }
|
{ private declarations }
|
||||||
|
fOnChanged : TNotifyEvent;
|
||||||
|
procedure DoChanged;
|
||||||
public
|
public
|
||||||
{ public declarations }
|
{ public declarations }
|
||||||
class function SupportedOptionsClass: TAbstractIDEOptionsClass; override;
|
class function SupportedOptionsClass: TAbstractIDEOptionsClass; override;
|
||||||
@@ -47,18 +49,11 @@ type
|
|||||||
procedure Setup(ADialog: TAbstractOptionsEditorDialog); override;
|
procedure Setup(ADialog: TAbstractOptionsEditorDialog); override;
|
||||||
procedure ReadSettings(AOptions: TAbstractIDEOptions); override;
|
procedure ReadSettings(AOptions: TAbstractIDEOptions); override;
|
||||||
procedure WriteSettings(AOptions: TAbstractIDEOptions); override;
|
procedure WriteSettings(AOptions: TAbstractIDEOptions); override;
|
||||||
|
property OnChanged: TNotifyEvent read fOnChanged write fOnChanged;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
|
||||||
procedure EnableiPhoneAppProject(project: TLazProject);
|
|
||||||
|
|
||||||
implementation
|
implementation
|
||||||
|
|
||||||
procedure EnableiPhoneAppProject(project: TLazProject);
|
|
||||||
begin
|
|
||||||
|
|
||||||
end;
|
|
||||||
|
|
||||||
{ TiPhoneProjectOptionsEditor }
|
{ TiPhoneProjectOptionsEditor }
|
||||||
|
|
||||||
procedure TiPhoneProjectOptionsEditor.cmbSDKsChange(Sender: TObject);
|
procedure TiPhoneProjectOptionsEditor.cmbSDKsChange(Sender: TObject);
|
||||||
@@ -71,6 +66,11 @@ begin
|
|||||||
|
|
||||||
end;
|
end;
|
||||||
|
|
||||||
|
procedure TiPhoneProjectOptionsEditor.DoChanged;
|
||||||
|
begin
|
||||||
|
if Assigned(fOnChanged) then fOnChanged(Self);
|
||||||
|
end;
|
||||||
|
|
||||||
function TiPhoneProjectOptionsEditor.GetTitle: String;
|
function TiPhoneProjectOptionsEditor.GetTitle: String;
|
||||||
begin
|
begin
|
||||||
Result:=strPrjOptTitle;
|
Result:=strPrjOptTitle;
|
||||||
@@ -111,7 +111,7 @@ begin
|
|||||||
isIPhoneApp:=chkisPhone.Checked;
|
isIPhoneApp:=chkisPhone.Checked;
|
||||||
SDK:=cmbSDKs.Caption;
|
SDK:=cmbSDKs.Caption;
|
||||||
AppID:=edtAppID.Text;
|
AppID:=edtAppID.Text;
|
||||||
Save;
|
DoChanged;
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
@@ -127,5 +127,7 @@ initialization
|
|||||||
{$I project_iphone_options.lrs}
|
{$I project_iphone_options.lrs}
|
||||||
RegisterIDEOptionsEditor(iPhonePrjGroup, TiPhoneProjectOptionsEditor, iPhoneOptions);
|
RegisterIDEOptionsEditor(iPhonePrjGroup, TiPhoneProjectOptionsEditor, iPhoneOptions);
|
||||||
|
|
||||||
|
finalization
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user