Hallo-
Über Projekt -> Optionen für Projektseite kann man sich ja eine "Projektseite" (
HTML) setzen die bei jedem Öffnen des Projekts direkt geöffnet wird (statt dem ersten Formular).
Das nutze ich schon lange sehr gerne, jetzt möchte der Seite allerdings ein paar Links auf .pas-Dateien verpassen sodass diese bei einem Klick direkt in der
IDE geöffnet werden.
Was mittels JavaScript (wovon ich keine Ahnung habe) möglich ist schaue ich mir bei der Delphi Welcome Page ab (
C:\Program Files (x86)\Embarcadero\Studio\x.0\Welcomepage).
Ich habe es einmal folgendermaßen versucht:
Code:
<
html>
<head>
<script>
function openFileLink(fileName)
{
try
{
external.Application.OpenFile(fileName);
} catch(e) {
alert(e.message);
}
}
</script>
</head>
<body>
<p>
Test!
<br/>
<a href="../
GUI/
GUI.MainForm.pas">
GUI.MainForm</a>
<br />
<a href="javascript
:external.Application.MainForm.FileNewItem.Click">Invoke FileNewItem</a>
<br/>
<a href="javascript
:openFileLink('../
GUI/
GUI.MainForm.pas')">This is a test (relative Path)</a>
<br />
<a href="javascript
:openFileLink('k:/
GUI.MainForm.pas')">This is a test (absolute Path)</a>
</p>
</body>
</
html>
Der erste Hyperlink öffnet einen "Speichern Unter..."-Dialog für die angegebene Datei.
Das
Application.MainForm.FileNewItem.Click
ist ein Test ob ich überhaupt die "Spezielmethoden" der
IDE aufrufen kann. Es klappt.
Das Öffnen mittels relativem Pfad schlägt fehl denn als Basis-Pfad wird nicht der Projektpfad oder etwas anderes sinnvolles verwendet sondern
C:\windows\system32.
Der letzte Eintrag ist das ganze einmal mit absoluten Pfaden, das scheint zu klappen.
Wie macht man das richtig?