AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte MyInsight, das Delphi 2010 IDE-Insight für's eigene Programm
Thema durchsuchen
Ansicht
Themen-Optionen

MyInsight, das Delphi 2010 IDE-Insight für's eigene Programm

Ein Thema von himitsu · begonnen am 29. Apr 2010 · letzter Beitrag vom 18. Jun 2010
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.373 Beiträge
 
Delphi 12 Athens
 
#1

Re: MyInsight

  Alt 4. Mai 2010, 09:25
Das Problemchen mit den fehlenden Farben in der TreeView konnte ich nun erstmal umgehen,
die Icons lassen sich nun stretchen (hab's über ein weiteres Bitmap gelöst und stretche erst dann),
nur die leeren Standard-Icons der Fenster ignoriere ich jetzt erstmal (man kann ja auch andere Icons und sonstige Bilder übergeben).
Sonst scheint es ja zu funktionieren.

Daniel bräuchte theoretisch jetzt nur seine Aktion-Listen angeben
Delphi-Quellcode:
Insight.AddActionList(CommandActionList, 'Befehle', True);
Insight.AddActionList(OtherActionList, 'Anderes');
und dann müßte nur noch irgendwann der Insight-Dialog aufgerufen werden.
Delphi-Quellcode:
procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
  if Key = VK_F6 then
    Insight.Show(Self)
end;
Beim Anzeigen werden die registrierten Aktionlisten neu ausgelesen. (falls in der Zwischenzeit mal was geändert wurde)

Das True bei AddActionList gibt nur an, daß alle Aktionen der Liste in die angegebene Standard-Kategorie einsortiert sollen.
Ansonsten werden die Kategorien verwendet, welche bei den jeweiligen Actions angegeben sind.


[info] Quellcodes und der Screenshot upgedatet
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.373 Beiträge
 
Delphi 12 Athens
 
#2

Re: MyInsight, das Delphi 2010 IDE-Insight für's eigene Prog

  Alt 4. Mai 2010, 20:27
Ups, da hatten sich ein paar Kleinigkeiten eingeschlichen, welche ich beim Testen mit Delphi 2006 ändern mußte und vergaß wieder zurückzubauen.
(vorallem da dieses in der TStringList kein OwnsObjects kennt, was ohne Reaktivierung des Codes in einem Speicherleck endete und der überladene Default-Property wurde auch nicht zurück umbenannt)
Außerdem werden jetzt in der Demo noch über 1000 Dummy-Einträge eingefügt, um die Geschwindigkeit zu testen.
Selbst über 3500 Einträge reagierten noch in annehmbarer Zeit.
Wobei ich schon überrascht war, da der TreeView bei jeder Änderung der angezeigten Liste komplett neu aufgebaut wird.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
christio

Registriert seit: 7. Sep 2006
12 Beiträge
 
#3

AW: MyInsight, das Delphi 2010 IDE-Insight für's eigene Programm

  Alt 16. Jun 2010, 15:03
Hallo,

Wie wäre es mit einem Insight.AddMainMenu?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.373 Beiträge
 
Delphi 12 Athens
 
#4

AW: MyInsight, das Delphi 2010 IDE-Insight für's eigene Programm

  Alt 16. Jun 2010, 17:02
Menüs lassen sich in meiner internen Version schon hinzufügen und verwalten (das war nicht so schwer ... brauchte ja nur die Verwaltung der Action-Listen klonen),

aber die Menüs auch noch in die Insight-Liste einzufügen ... da muß ich erstmal überlegen/probieren wie sich die Menü-Struktur am Besten auf die Kategorien verteilen läßt.
Action-Listen und die Insight-Liste sind ja ein Baum, wo alle "Aktionen" nur in der zweiten Ebene liegen, wärend die erste Ebene immer eine Kategorie ist.

Ein Menü (MainMenu, PopupMenu und Co.) können eine Mehrdimensionale Baumstruktur sein und die Aktionen (Items mit OnClick-Ereignissen) können sonstwo liegen.


[add]
noch völlig ungetestet (werd ich versuchen bald nachzuholen), aber es kompiliert zumindestens schonmal.

Neue Befehle in IInsight:
Delphi-Quellcode:
Procedure AddMenu (Menu: TMenu; DefaultCategory: String);
Procedure AddMainMenu(Menu: TMainMenu; DefaultCategory: String; AllInDefault: Boolean = False);
Procedure AddPopup (Menu: TPopupMenu; DefaultCategory: String);
Function CountMenus: Integer;
Property Menu [idx: Integer]: IInsightMenu Read GetMenu;
Procedure Delete(Menu: IInsightMenu); Overload;
Procedure ClearMenus;
[edit] Anhang gelöscht
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu (17. Jun 2010 um 16:42 Uhr)
  Mit Zitat antworten Zitat
christio

Registriert seit: 7. Sep 2006
12 Beiträge
 
#5

AW: MyInsight, das Delphi 2010 IDE-Insight für's eigene Programm

  Alt 17. Jun 2010, 12:24
Schaut gut aus, deine Komponente macht wirklich Sinn.
Danke.
  Mit Zitat antworten Zitat
christio

Registriert seit: 7. Sep 2006
12 Beiträge
 
#6

AW: MyInsight, das Delphi 2010 IDE-Insight für's eigene Programm

  Alt 17. Jun 2010, 14:03
Vielleicht noch eine Funktion fürs UI:

Delphi-Quellcode:
procedure TInsightForm.TreeView1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if ((Key = VK_UP) and
      (not Assigned(TreeView1.Selected) or (TreeView1.Items.GetFirstNode = TreeView1.Selected))) then
    Edit1.SetFocus;
end;

procedure TInsightForm.Edit1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Key = VK_DOWN then
    TreeView1.SetFocus;
end;
  Mit Zitat antworten Zitat
Win32.API

Registriert seit: 23. Mai 2005
312 Beiträge
 
#7

AW: MyInsight, das Delphi 2010 IDE-Insight für's eigene Programm

  Alt 17. Jun 2010, 14:04
Starke Komponente

Weiter so, werde sie bald in einem Projekt einsetzen und hier Bericht erstatten.

//Win32
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:00 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz