mirror of https://gitlab.com/basile.b/dexed.git
reload last project, handle the free standing project
This commit is contained in:
parent
cc4fdbfc40
commit
baee2e6207
|
@ -321,12 +321,14 @@ type
|
|||
function groupFilename: string;
|
||||
// indicates the count of project in the group
|
||||
function projectCount: integer;
|
||||
// indicates the index of the project
|
||||
function getProjectIndex: integer;
|
||||
// returns the nth project
|
||||
function getProject(index: Integer): ICECommonProject;
|
||||
// tries to find the project named fname.
|
||||
function findProject(const fname: string): ICECommonProject;
|
||||
// selects the nth project
|
||||
procedure selectProject(index: Integer);
|
||||
procedure setProjectIndex(index: Integer);
|
||||
end;
|
||||
|
||||
|
||||
|
|
|
@ -423,6 +423,7 @@ type
|
|||
fProject: string;
|
||||
fDocIndex: integer;
|
||||
fProjectGroup: string;
|
||||
fProjectIndex: integer;
|
||||
procedure setDocuments(aValue: TStringList);
|
||||
protected
|
||||
procedure beforeSave; override;
|
||||
|
@ -432,6 +433,7 @@ type
|
|||
property documents: TStringList read fDocuments write setDocuments;
|
||||
property project: string read fProject write fProject;
|
||||
property projectGroup: string read fProjectGroup write fProjectGroup;
|
||||
property projectIndex: integer read fProjectIndex write fProjectIndex;
|
||||
public
|
||||
constructor create(aOwner: TComponent); override;
|
||||
destructor destroy; override;
|
||||
|
@ -690,12 +692,16 @@ procedure TCELastDocsAndProjs.Assign(aSource: TPersistent);
|
|||
var
|
||||
itf: ICECommonProject = nil;
|
||||
begin
|
||||
if aSource is TCEMainForm then
|
||||
if aSource = CEMainForm then
|
||||
begin
|
||||
itf := TCEMainForm(aSource).fFreeProj;
|
||||
itf := CEMainForm.fFreeProj;
|
||||
if itf <> nil then
|
||||
fProject := itf.filename;
|
||||
fProjectGroup := getProjectGroup.groupFilename;
|
||||
if itf = CEMainForm.fProject then
|
||||
fProjectIndex:=-1
|
||||
else
|
||||
fProjectIndex := getProjectGroup.getProjectIndex;
|
||||
end else
|
||||
inherited;
|
||||
end;
|
||||
|
@ -731,6 +737,8 @@ begin
|
|||
begin
|
||||
getProjectGroup.openGroup(fProjectGroup);
|
||||
end;
|
||||
if (fProjectIndex = -1) and (dst.fFreeProj <> nil) then
|
||||
dst.fFreeProj.activate;
|
||||
end else
|
||||
inherited;
|
||||
end;
|
||||
|
|
|
@ -36,7 +36,6 @@ type
|
|||
fModified: boolean;
|
||||
fOnChanged: TNotifyEvent;
|
||||
procedure setItems(value: TCollection);
|
||||
procedure setProjectIndex(value: integer);
|
||||
function getItem(index: integer): TProjectGroupItem;
|
||||
procedure doChanged;
|
||||
//
|
||||
|
@ -45,9 +44,6 @@ type
|
|||
protected
|
||||
procedure afterLoad; override;
|
||||
procedure afterSave; override;
|
||||
published
|
||||
property items: TCollection read fItems write setItems;
|
||||
property projectIndex: integer read fProjectIndex write setProjectIndex;
|
||||
public
|
||||
constructor create(aOwner: TComponent); override;
|
||||
destructor destroy; override;
|
||||
|
@ -60,13 +56,17 @@ type
|
|||
function groupModified: boolean;
|
||||
function groupFilename: string;
|
||||
function projectCount: integer;
|
||||
function getProjectIndex: integer;
|
||||
function getProject(ix: Integer): ICECommonProject;
|
||||
function findProject(const fname: string): ICECommonProject;
|
||||
procedure selectProject(ix: Integer);
|
||||
procedure setProjectIndex(value: Integer);
|
||||
//
|
||||
function addItem(const fname: string): TProjectGroupItem;
|
||||
property item[ix: integer]: TProjectGroupItem read getItem; default;
|
||||
property onChanged: TNotifyEvent read fOnChanged write fOnChanged;
|
||||
published
|
||||
property items: TCollection read fItems write setItems;
|
||||
property index: integer read fProjectIndex write setProjectIndex;
|
||||
end;
|
||||
|
||||
(**
|
||||
|
@ -205,11 +205,6 @@ begin
|
|||
end;
|
||||
end;
|
||||
|
||||
procedure TProjectGroup.selectProject(ix: Integer);
|
||||
begin
|
||||
setProjectIndex(ix);
|
||||
end;
|
||||
|
||||
procedure TProjectGroup.afterLoad;
|
||||
begin
|
||||
inherited;
|
||||
|
@ -284,6 +279,11 @@ begin
|
|||
exit(fItems.Count);
|
||||
end;
|
||||
|
||||
function TProjectGroup.getProjectIndex: integer;
|
||||
begin
|
||||
exit(fProjectIndex);
|
||||
end;
|
||||
|
||||
function TProjectGroup.singleServiceName: string;
|
||||
begin
|
||||
exit('ICEProjectGroup');
|
||||
|
@ -443,16 +443,16 @@ begin
|
|||
exit;
|
||||
TProjectGroupItem(lstProj.Selected.Data).lazyLoad;
|
||||
subjProjFocused(fProjSubj, TProjectGroupItem(lstProj.Selected.Data).project);
|
||||
if projectGroup.projectIndex <> lstProj.ItemIndex then
|
||||
projectGroup.projectIndex := lstProj.ItemIndex;
|
||||
if projectGroup.getProjectIndex <> lstProj.ItemIndex then
|
||||
projectGroup.setProjectIndex(lstProj.ItemIndex);
|
||||
end;
|
||||
|
||||
procedure TCEProjectGroupWidget.handleChanged(sender: TObject);
|
||||
begin
|
||||
updateList;
|
||||
if (projectGroup.projectIndex <> -1) and (projectGroup.projectIndex <> lstProj.ItemIndex) then
|
||||
if (projectGroup.getProjectIndex <> -1) and (projectGroup.getProjectIndex <> lstProj.ItemIndex) then
|
||||
begin
|
||||
lstProj.ItemIndex := projectGroup.projectIndex;
|
||||
lstProj.ItemIndex := projectGroup.getProjectIndex;
|
||||
lstProjDblClick(nil);
|
||||
end;
|
||||
end;
|
||||
|
|
|
@ -53,12 +53,12 @@ The latest Coedit version requires at least DMD 2.066.
|
|||
* Choose the zipped setup for your platform (at the bottom of a release log, the buttons labeled `coedit.<version>.<platform>.setup.zip`).
|
||||
* The content must be extracted and executed:
|
||||
* note that the option `--nodcd` can be typed to skip the installation of the completion daemon.
|
||||
* Linux, all users, in a console `cd` to the file location and type `sudo .\coedit.<version>.<platform>.setup`.
|
||||
* Linux, only you, in a console `cd` to the file location and type: `.\coedit.<version>.<platform>.setup`.
|
||||
* Linux, all users, in a console `cd` to the file location and type `sudo ./coedit.<version>.<platform>.setup`.
|
||||
* Linux, only you, in a console `cd` to the file location and type: `./coedit.<version>.<platform>.setup`.
|
||||
* Windows, optional, it may be necessary to deactivate your anti-virus software. Norton AV has been reported for detecting a potential threat in his heuristic module and Avast AV not to allow the setup at all.
|
||||
* Windows: double click, and confirm in the UAC dialog box.
|
||||
* To uninstall, run the same program but with the `-u` option.
|
||||
* Linux: if coedit has been setup with `sudo` you must also uninstall with elevated privileges: `sudo .\coedit.<version>.<platform>.setup -u`.
|
||||
* Linux: if coedit has been setup with `sudo` you must also uninstall with elevated privileges: `sudo ./coedit.<version>.<platform>.setup -u`.
|
||||
* Windows: start a console as administrator and execute: `coedit.<version>.win32.setup -u`.
|
||||
* Troubleshooting: run the setup program with the `-l` (or `--list`) option to get the status of the files and use the report to uninstall manually the files or open a ticket [here][lnk_bugtracker].
|
||||
|
||||
|
|
Loading…
Reference in New Issue