Hm...
Ich hänge das ganze einfach mal an. Eigentlich braucht man zusätzlich nur noch TVST der aktuellen Version. SynEdit ist verwerflich.
Aber zur "Übersichtlichkeit" wegen hier mal die weiteren wichtigen Stellen:
Delphi-Quellcode:
procedure TMainForm.miNewProjectClick(Sender: TObject); // neues Projekt
var
newNode: PVirtualNode;
newData: PData;
begin
newNode := vstProjects.AddChild(nil);
vstProjects.Text[newNode, 1] := 'test';
newData := vstProjects.GetNodeData(newNode);
newData^.mode := 0;
newData^.Name := vstProjects.DefaultText;
newData^.ProjectDir := '';
end;
procedure TMainForm.miiCreateNewClick(Sender: TObject); // neue Datei
var
selData: PData;
selNode: PVirtualNode;
newData: PData;
newNode: PVirtualNode;
begin
vstProjects.BeginUpdate;
selNode := vstProjects.FocusedNode;
if not Assigned(selNode) then Exit;
selData := vstProjects.GetNodeData(selNode);
if selData^.mode <> 0 then selNode := selNode.Parent;
newNode := vstProjects.AddChild(selNode);
newData := vstProjects.GetNodeData(newNode);
newData^.mode := 1;
newData^.Name := 'Neue Sourcefile';
newData^.PrgLanguage := selData^.PrgLanguage;
vstProjects.FullExpand(selNode);
vstProjects.EndUpdate;
vstProjects.Refresh;
end;
Chris