Antwort auf: Bleibender Dark Mode

Startseite Foren Deutsches LiveCode-Forum Bleibender Dark Mode Antwort auf: Bleibender Dark Mode

#19783
Klaus Major
Administrator

    Du musst die Datei aber auch irgendwann mal wieder einlesen und darauf reagieren!
    Das ist doch wirklich kaum etwas anderes als bei Deinen vorherigen Fragen!?

    Hinweis:
    Das kann auch nciht funktionieren!
    “startup” ist tatsächlich ein reserviertes Wort in LC, sieht man auch im Skript Editor, das Wort wird eingefärbt!

    Diese Nachricht “on startup” wird aber nur beim Starten der späteren RUNTIME gesendet, in der IDE aber nicht.

    Ausserdem hat STARTUP keinen Parameter, und schon gar nicht Deine gespeicherte Variable, wo soll die denn herkommen?

    Und Du solltest Deine Variable darkmode als GLOBAL definieren, damit von überall darauf zugegriffen werden kann!

    Mach es so:

    ...
    ## Einmal reicht, Tipparbeit sparen!:
    put specialfolderpath("documents") & "/dark_mode" into tDatei
    if the highlight of me then
          put "dark" into darkmode     
    else
          put "light" into darkmode
    end if
    ## Jetzt erst wegschreiben:
    put darkmode into url("file:" & tDatei)
    ...

    Dann im Stackskript:

    global darkmode
    
    on OPENSTACK
      ## Zuerst die Datei einlesen
      put specialfolderpath("documents") & "/dark_mode" into tFile
    
      ## Noch keine Datei vorhanden -> auf DEFAULT setzen:
      if there is not a file tFile then
         put "Dein Defaultwert für Darkmode hier" into derModus
      else
         put url ("file:" & tFile) into derModus
      end if
    
      ## Weiterer Trick, da LC zuerst alles in Klammern auflöst:
      set the highlight of widget "dark" to (darkmode = "dark")
      ## Bitte mal auf der zunge zergehen lassen.
      ## Diese Logik ist essentiell fürs Programmieren!
    
      ## Siehe oben, Mr. Boole und seine Logik ist unser Freund!
      ##if darkmode = "dark" then
      ##   set the highlight of widget "dark" to "true"
      ##else
      ##   set the highlight of widget "dark" to "false"
      ##end if
    end openstack

    Und jetzt bitte mit dem alten Thread vergleichen und sehen, daß es hier im Prinzip keinen Unterschied gibt! Und das dann bitte auch für die Zukunft verstehen und merken! 😎

    Gruß

    Klaus