AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Ordnung muss sein (LaunchBar)
Thema durchsuchen
Ansicht
Themen-Optionen

Ordnung muss sein (LaunchBar)

Ein Thema von EWeiss · begonnen am 17. Mai 2017 · letzter Beitrag vom 14. Nov 2021
Antwort Antwort
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.055 Beiträge
 
Delphi 12 Athens
 
#1

AW: Ordnung muss sein (LaunchBar)

  Alt 17. Jun 2017, 06:09
Mit der .ini geht es viel einfacher. Wie hat SneakyBagels ja auch schon geschrieben, einfach auf Vorhandensein der lokalen .ini prüfen und diese anlegen oder löschen beim Umschalten:
Delphi-Quellcode:
procedure InitPath(const ACheckPortable: Boolean);
var
  sIniFile: string;
  ExeName: String;
  FilePath: String;
begin
  ExeName := ExtractFileName(ChangeFileExt(ParamStr(0), ''));
  FilePath := ExtractFilePath(ParamStr(0));
  sIniFile := FilePath + ExeName + '.ini';
  if ACheckPortable then
    Prop.Portable := FileExists(sIniFile);
  if Prop.Portable then
    OTTBIni := TIniFile.Create(sIniFile)
  else
  begin
    DeleteFile(sIniFile); // falls auf nicht portable geschaltet wurde
    UserAppDataDir := GetSpecialFolder(CSIDL_APPDATA);
    // Direktory erstellen wenn nicht vorhanden
    if not ForceDirectories(UserAppDataDir + '\BrewIdeas\OTTB') then
      raise Exception.Create('Cannot create' + UserAppDataDir + '\BrewIdeas\OTTB');

    OTTBIni := TIniFile.Create(UserAppDataDir + '\BrewIdeas\OTTB' + '\OTTB.ini')
  end;
end;

procedure LoadINI;
begin
  InitPath(True);

  Prop.SoundActive := OTTBIni.ReadBool('OTTB Option', 'SoundActive', true);
  Prop.ShortCutVisible := OTTBIni.ReadBool('OTTB Option', 'ShortCutVisible', false);
  CreateIcon.ShowDesktopIcons(Prop.ShortCutVisible);
  OTTBIni.Free;
end;

function SaveINI: Boolean;
var
  OldErrorMode: Integer;
begin
  InitPath(False);

  OldErrorMode := SetErrorMode(SEM_FAILCRITICALERRORS);
  try
    OTTBIni.WriteBool('OTTB Option', 'SoundActive', Prop.SoundActive);
    OTTBIni.WriteBool('OTTB Option', 'ShortCutVisible', Prop.ShortCutVisible);
  finally
    Result := True;
    SetErrorMode(OldErrorMode);
    OTTBIni.Free;
  end;
end;
Das Halt habe ich einmal herausgenommen, denn wenn du eine Exception wirfst, wird das ja ohnehin nicht mehr ausgeführt.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#2

AW: Ordnung muss sein (LaunchBar)

  Alt 17. Jun 2017, 06:12
@jaenicke Danke werde es mal einbauen und testen.

Interesse mal das neue Menu zu testen ?
Dann lade ich die 2 Dateien nochmal hoch.

EDIT:
Funktioniert Super!
Habe da keine vernünftige lösung erarbeiten können. (Mir viel einfach nichts ein)

gruss

Geändert von EWeiss (17. Jun 2017 um 06:20 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.055 Beiträge
 
Delphi 12 Athens
 
#3

AW: Ordnung muss sein (LaunchBar)

  Alt 17. Jun 2017, 06:20
Jetzt könnte ich gerade, ja.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#4

AW: Ordnung muss sein (LaunchBar)

  Alt 17. Jun 2017, 06:20
Jetzt könnte ich gerade, ja.
OK.. Es wird aber das neue Archiv vorrausgesetzt.
Und die Anwendung kann dann nur über den taskmanager entfernt werden wenn es nicht kracht
Das Menu (Popup Window) kannst du wegschalten wenn du auf dem Desktop klickst.

gruss

Geändert von EWeiss (18. Jun 2017 um 00:40 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.055 Beiträge
 
Delphi 12 Athens
 
#5

AW: Ordnung muss sein (LaunchBar)

  Alt 17. Jun 2017, 06:38
Die Positionierung des vertikalen Teils sieht so deutlich besser aus, der ist nun genau mittig. Am Rest hat sich abgesehen von der Breite insgesamt um ein paar Pixel nix geändert und nach dem Öffnen des Menüs friert die Anwendung ein, sprich auch Hovern im Menü passiert nicht.
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#6

AW: Ordnung muss sein (LaunchBar)

  Alt 17. Jun 2017, 06:43
Die Positionierung des vertikalen Teils sieht so deutlich besser aus, der ist nun genau mittig. Am Rest hat sich abgesehen von der Breite insgesamt um ein paar Pixel nix geändert und nach dem Öffnen des Menüs friert die Anwendung ein, sprich auch Hovern im Menü passiert nicht.
Hmm..
Wie ist es denn mit dem Text?
Ist dieser zentriert oder immer noch versetzt wie beim normalen Menu.

Bei mir sieht es so aus.
Einfrieren tut da nix wenn das Window geöffnet wird setze ich die Bar auf enabled False damit keine Eingaben mehr getätigt werden können wie beim normalen PopUpMenu.

Klicks du auf den Desktop mit der linken Maus sollte das WIndow schließen und die Bar wieder bedienbar sein.
Zitat:
sprich auch Hovern im Menü passiert nicht.
Das ist ja alles noch im Anfangsstadium

gruss

Geändert von EWeiss (18. Jun 2017 um 00:40 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
10.055 Beiträge
 
Delphi 12 Athens
 
#7

AW: Ordnung muss sein (LaunchBar)

  Alt 17. Jun 2017, 06:53
Ist dieser zentriert oder immer noch versetzt wie beim normalen Menu.
Da habe ich mich eben geirrt, der sieht jetzt richtig aus. Links alt direkt nach Aufruf, rechts neu:
popupmenue.png
Sebastian Jänicke
AppCentral
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#8

AW: Ordnung muss sein (LaunchBar)

  Alt 17. Jun 2017, 06:56
Wie gesagt ist noch nicht fertig.
Eventuell muss ich das ebenfalls auf Sprites aufbauen da ich sonst nicht weis wie ich die einzelnen Menü Punkte verwalten soll.
Ich muss vorher sicher sein das die Schrift richtig angezeigt wird, vorher macht es keinen sinn das weiter zur verfolgen.


gruss

Geändert von EWeiss (17. Jun 2017 um 14:53 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


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 15:23 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