Ankündigung

Einklappen
Keine Ankündigung bisher.

Anfängerfragen zu XXMARK, XXMODUL und XXMODULCLICK

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Anfängerfragen zu XXMARK, XXMODUL und XXMODULCLICK

    Hallo,

    ich versuch mich gerade mal in die Funktionen vom XXAPI reinzuarbeiten und ärgere mich mit XXMARK, XXMODUL und XXMODULCLICK rum.
    Ohne Doku ist das alles nicht so einfach.

    Also nochmal von vorne.

    Falls ich irgendwo Müll erzähle bitte sofort eingreifen und korrigieren. Ich erzähls jetzt mal so,
    wie ich das bis jetzt verstanden habe.

    Die 3 o.g. Funktionen sind ja wohl die Funktionen, die man braucht, um Seiten in andere Seiten einzubinden.
    Also praktisch die Grundfunktion, um eine Navigation ordentlich hinzubekommen, d.h. das Menü und der Inhalt sind
    unterschiedliche Seiten, die dann zusammengebaut werden, dass man das Menü nicht redundant auf jeder Seite deffinieren muss.

    XXMARK ist dazu da, den Seiten ein Aliasnamen zu geben, um die Seite Seite später ansprechen zu können. Und da ist
    schon das erste Unverständnis. Warum muss ich der Seite ein Alias-Namen geben und kann nicht direkt auf den Seitennamen
    zugreifen. Dann des weiteren steht da "XXMARK should be placed on the xxAPI-INIT page to make them globaly available.".
    Kapiere ich nicht. XXMARK sollte auf der xxAPI-INIT Seite stehen. Ich dachte, das XXMARK auf den Seiten stehen soll, die
    ich später einbinden will.

    XXMODULCLICK ist die Funktion der Menübuttons und XXMODUL ist das Fenster mit dem Inhaltsframe ?!?.

    XXMODUL*Modulname
    XXMODULCLICK*Text*Modulname*XXMARK-Name*Modulname*XXMARK-Name*

    So wie ich das Interpretiere gebe ich dem Modul einen Namen ("Modulname"), und bei XXMODULCLICK gebe ich den Namen wieder an,
    damit er weiss, in welchem Fenster das dargestellt werden soll. Aber so wie es aussieht, ist das nicht ein "freier" Name
    des Feldes, sondern muss ein AliasName einer Seite sein, den man vorher mit XXMARK gesetzt hat. Ist mir unlogisch. Denn in diesem
    Modul sollen ja verschiedene Seiten angezeigt werden, je nach Klick.

    In dem XXMODUL-Fenster wird, bevor irgendwas über XXMODULCLICK angeklickt wurde, die gleiche Seite nochmal eingebunden.
    Ist ja Müll. Wo definiere ich denn die Standard-Seite, die dort angezeigt wird, bevor ich irgendwas geklickt habe.

    Ihr seht, jede Menge Fragen. So ganz blicke ich das System noch nicht. Vieleicht erläutert jemand das mal für mich.

    Viele Grüße und Vielen Dank im Vorraus
    Steevee

    #2
    Zitat von Steevee Beitrag anzeigen
    XXMARK ist dazu da, den Seiten ein Aliasnamen zu geben, um die Seite Seite später ansprechen zu können. Und da ist
    schon das erste Unverständnis. Warum muss ich der Seite ein Alias-Namen geben und kann nicht direkt auf den Seitennamen
    zugreifen.
    Woher soll der Name kommen? Es wird ja keiner übertragen, ausser die Überschriften Text1 und Text2. Diese aber erst wenn man die Seite aufruft.

    Zitat von Steevee Beitrag anzeigen
    Dann des weiteren steht da "XXMARK should be placed on the xxAPI-INIT page to make them globaly available.".
    Kapiere ich nicht. XXMARK sollte auf der xxAPI-INIT Seite stehen. Ich dachte, das XXMARK auf den Seiten stehen soll, die
    ich später einbinden will.
    Dann kannst du sie ja nicht aufrufen wenn du ihren Namen nicht hast.

    Zitat von Steevee Beitrag anzeigen
    XXMODULCLICK ist die Funktion der Menübuttons und XXMODUL ist das Fenster mit dem Inhaltsframe ?!?.
    Standardmäßig öffnet ein klick ja immer eine Seite in der gleichen Session(Modul) wenn du aber ein anderes Modul ändern willst brauchst du dazu XXMODULCLICK
    Zitat von Steevee Beitrag anzeigen
    So wie ich das Interpretiere gebe ich dem Modul einen Namen ("Modulname"), und bei XXMODULCLICK gebe ich den Namen wieder an,
    damit er weiss, in welchem Fenster das dargestellt werden soll. Aber so wie es aussieht, ist das nicht ein "freier" Name
    Nein, es sollte nur ein freier Name sein, wenn es sich um ein neues Modul handelt, da Module mit gleichem Namen nicht gleichzeitig angezeigt werden können. Ein Modul was allerdings die gleiche Funktion auf mehreren Seiten hat (z.B. QTR = Quadrant oben rechts) dann sollte der Name immer gleich sein, damit du die bestehende Session weiter benutzen kannst. Die Sessions bleiben alle erhalten (egal ob sichtbar oder nicht)
    Zitat von Steevee Beitrag anzeigen
    des Feldes, sondern muss ein AliasName einer Seite sein, den man vorher mit XXMARK gesetzt hat.
    ist auch falsch, lediglich der 2. Parameter (wenn angegeben) MUSS ein Aliasname sein der vorher bereits mit XXMARK und Aktion Seite aufrufen definiert wurde. Du kannst aber auch einfach nur XXMODUL*Modulname benutzen, und die Startseite des Moduls über Aktion Seite aufrufen definieren.
    Zitat von Steevee Beitrag anzeigen
    Ist mir unlogisch. Denn in diesem
    Modul sollen ja verschiedene Seiten angezeigt werden, je nach Klick.
    s.o. du definierst damit nur die Startseite
    Zitat von Steevee Beitrag anzeigen
    In dem XXMODUL-Fenster wird, bevor irgendwas über XXMODULCLICK angeklickt wurde, die gleiche Seite nochmal eingebunden.
    Ist ja Müll. Wo definiere ich denn die Standard-Seite, die dort angezeigt wird, bevor ich irgendwas geklickt habe.
    s.o.
    du brauchst keinen XXMODULCLICK solange du nicht von einer anderen Session (modul) ein anderes Modul ändern willst.


    Das einfachste ist also

    Lege dir einfach auf der Seite wo du ein Modul haben möchtest ein Modul mit einem Funktions- oder Location gebundenem Namen an. XXMODUL*OBENRECHTS und gib über Aktion Seite aufrufen, die Seite die beim ersten Aufruf geladen werden soll vor.

    Innerhalb dieser Modulseite kannst du ganz normal Seiten aufrufen (ohne XXMODULCLICK).

    Wenn du jetzt über deine Hauptvisu eine andere Seite in dem MODUL OBENRECHTS aufrufen willst, dann brauchst du XXMODULCLICK, denn ein normales "Seite aufrufen" würde ja die Hauptvisuseite ändern.
    Da würdest du, damit du überhaupt weißt welche Seite du aufrufen möchtest, die XXMARK markierten Seiten.
    Wenn du jetzt in dem Modul OBENRECHTS z.B. eine Wetterseite laden willst, dann erstellst du auf deiner XXAPI-init Seite ein XXMARK*Wetter mit der Aktion "Seite aufrufen" und als Ziel die Seite mit dem Wetter, welche du in das Modul laden willst.
    Dann kannst du auf deiner Hauptvisu, an der Stelle wo du von ausserhalb des Moduls das Modul ändern möchstest (von innerhalb des Moduls kannst du die selbe Seite wie bei XXMARK auch einfach direkt über Aktion "Seite aufrufen" aufrufen.) das XXMODULCLICK benutzen. Das machst du mit XXMODULCLICK*Name des Moduls das du ändern willst*Alias der Seite die du in das Modul laden möchstest.
    In obrigem Beispiel wäre das XXMODULCLICK*OBENRECHTS*Wetter
    Nils

    aktuelle Bausteine:
    BusAufsicht - ServiceCheck - Pushover - HS-Insight

    Kommentar


      #3
      Oh übrigends sehr Schade
      https://knx-user-forum.de/xxapi/4064...okuthread.html
      hat fast 200 Views aber keiner der es bereits am laufen hat kann es mal eben beschreiben.

      Wundert euch nachher nicht das es keine Doku gibt, wenn keiner eine schreiben möchte.

      Das ist ein Community Projekt und keine Gira Standardsoftware die ihr für 2K €uro mit dem HS gekauft habt.
      Nils

      aktuelle Bausteine:
      BusAufsicht - ServiceCheck - Pushover - HS-Insight

      Kommentar


        #4
        Hallo Nils,

        irgendwo hab ich einen Denkfehler. Bekomme ich noch ein Tipp von Dir.

        Gruß
        Steevee
        Angehängte Dateien

        Kommentar


          #5
          Hallo Nils,

          wenn ich durch die ganze Materie durchgestiegen bin, werde ich versuchen ein bischen Doku aufzuschreiben.

          Gruß
          Steevee

          Kommentar


            #6
            Seite Hauptseite
            Code:
            Linke Seite
            XXMODULCLICK*inhalt*Home
            XXMODULCLICK*inhalt*Erdgeschoss
            XXMODULCLICK*inhalt*Obergeschoss
            
            Rechte Seite
            XXMODUL*inhalt -> Aktion: "Seite aufrufen" -> Modul_Home
            Modulseiten Modul_home/Modul_EG/Modul_OG
            Code:
            Content Frei deiner Wahl was du anzeigen willst
            KEIN XXMARK
            Wenn du von hier die Modulseite ändern willst reicht ein ganz normales Aktion "Seite aufrufen"
            Seite xxAPI-INIT
            Code:
            XXMARK*Home -> Aktion: "Seite Aufrufen" -> Modul_Home
            XXMARK*Erdgeschoss -> Aktion: "Seite Aufrufen" -> Modul_EG
            XXMARK*Obergeschoss -> Aktion: "Seite Aufrufen" -> Modul_OG
            XXSCRIPT* -> Aktion: Seite aufrufen" -> Hauptseite (das die Weiterleitung zur eigentlichen Startseite)
            Der User bekommt die Seite xxAPI-INIT als Startseite zugewiesen. Diese Seite wird aber nicht angezeigt sondern nuzr intern verarbeitet.
            Nils

            aktuelle Bausteine:
            BusAufsicht - ServiceCheck - Pushover - HS-Insight

            Kommentar


              #7
              Hallo,
              muss nochmal nachfragen. Ich bekomm das nicht hin.

              Seite xxAPI-INIT

              XXMARK*Home -> Aktion: "Seite Aufrufen" -> Modul_Home
              XXMARK*Erdgeschoss -> Aktion: "Seite Aufrufen" -> Modul_EG
              XXMARK*Obergeschoss -> Aktion: "Seite Aufrufen" -> Modul_OG
              XXSCRIPT* -> Aktion: Seite aufrufen" -> Hauptseite (das die Weiterleitung zur eigentlichen Startseite)
              OK. Hier definiere ich die Alias-Namen der Seiten. Kann der Alias-Name der gleiche sein, wie der Seitenname?
              Zum besseren Überblick mach ich mal ein "X_" davor.

              Code:
              XXMARK*X_Modul_Home -> Aktion: "Seite Aufrufen" -> Modul_Home
              ...
              so. Und nun ...

              Seite Hauptseite
              Code:

              Linke Seite
              XXMODULCLICK*inhalt*Home
              XXMODULCLICK*inhalt*Erdgeschoss
              XXMODULCLICK*inhalt*Obergeschoss

              Rechte Seite
              XXMODUL*inhalt -> Aktion: "Seite aufrufen" -> Modul_Home
              also das kann ja irgendwie nicht sein. Der erste Parameter ist laut ...

              /*
              * XXMODULCLICK is used to change other modulepages, it can
              * be used in different ways. Commands attached to the item
              * are also executed.

              * Argument 1 (can be blank) is the text shown on visu
              * Argument [2,4,6...] is the name of the module that will be changed
              * Argument [3,5,7...] (can be blank) is the XXMARK'ed pagename
              * (if blank the Visu-Page from "Seite aufrufen" is used)
              XXMODULCLICK**Modulename*Weatherstation
              XXMODULCLICK**Modulename*Weatherstation*Othermodul

              */
              ... ja die Beschriftung des Buttons.
              also dann

              Code:
              XXMODULCLICK*Home*inhalt
              oder

              Code:
              XXMODULCLICK*Home*inhalt*X_Modul_Home
              funktioniert aber alles nicht.

              Bin ich eigentlich der einzigste Blöde oder hat das noch nie jemand gemacht?

              Gruß
              Steevee

              Kommentar


                #8
                Zitat von Steevee Beitrag anzeigen
                OK. Hier deffiniere ich die Alias-Namen der Seiten. Kann der Alias-Name der gleiche sein, wie der Seitenname?
                Zum besseren Überblick mach ich mal ein "X_" davor.
                ja kann der gleiche sein, das X_ würde ich lassen


                Zitat von Steevee Beitrag anzeigen
                also das kann ja irgendwie nicht sein. Der erste Parameter ist laut ...
                ... ja die Beschriftung des Buttons.
                also dann
                jo hatte ich übersehen also

                Zitat von Steevee Beitrag anzeigen
                Code:
                XXMODULCLICK*Home*inhalt*X_Modul_Home
                Ja so ist richtig

                Zitat von Steevee Beitrag anzeigen
                Bin ich eigentlich der einzigste Blöde oder hat das noch nie jemand gemacht?
                Das ist das was ich meinte mit dem Doku Thread, es gibt zig XXMODUL Visus im Quad Design (schon aus der xxAPI1 Zeit) aber keiner kann es mal eben erklären

                So dass ich neben dem coden immer wieder von vorne mit dem erklären anfangen muss.
                Nils

                aktuelle Bausteine:
                BusAufsicht - ServiceCheck - Pushover - HS-Insight

                Kommentar


                  #9
                  Also ich hab mir das alles jetzt 20 mal durchgelesen und alles Mögliche ausprobiert und es funktioniert einfach nicht.

                  Der Start der Seite sieht jetzt so aus wie erwartet (Siehe Bild), aber die Links funktionieren nicht. Ich weiss nicht mehr weiter ...

                  Nochmal was anderes:
                  Wenn das Seitenfenster des Browsers ein anderes Höhe/Breite-Verhältnis wie die Seite hat, gibts da ja schwarze Balken. Kann man die Farbe irgendwo definieren (Schwarz ist mir zu dunkel)?

                  Wenn das Browserfenster größer als die Seite ist, dann wird ja vergrößert. Geht das irgendwie, das die Seite auch verkleinert wird, wenn das Browserfenster kleiner als die Seite ist?

                  Das ist das was ich meinte mit dem Doku Thread, es gibt zig XXMODUL Visus im Quad Design (schon aus der xxAPI1 Zeit) aber keiner kann es mal eben erklären

                  So dass ich neben dem coden immer wieder von vorne mit dem erklären anfangen muss.
                  Kann ich mir eine Visu runterladen, wo ich mir die Funktionen anschauen kann? Der Downloadbereich hat ja nur noch HS-Logikfunktionen.

                  Ich hab ja auch noch andere Hobbys außer KNX. Aber so krass wie bei KNX gehts nirgenswo zu. Im KNX-Bereich gibt es scheinbar nur Leute die keine Ahnung haben, oder Leute die keine Infos rausrücken weil sie damit Geld verdienen wollen. Und der Rest sind 5 Leute hier im Forum. Und selbst von denen 5 liest man oft genug "Frag dein Elektriker" oder "Such dir ein SI".

                  Dank Dir, dass du was entwickelst, was du dir nicht gleich vergolden lassen willst. So Leute braucht die Welt!

                  Frustige Grüße
                  Steevee
                  Angehängte Dateien

                  Kommentar


                    #10
                    Hi

                    der Thorsten hat es doch in seiner Anleitung ganz gut beschrieben.
                    https://knx-user-forum.de/xxapi/1857...-quadvisu.html

                    Ich habe mir damals die Beispielvisu aus dem Thread installiert um zu schauen, wie die xxapi funktioniert. Würde ich Dir auch empfehlen....

                    Gruß
                    Olli

                    Kommentar


                      #11
                      Ah. OK danke. Das werde ich mir erstmal näher anschauen. Mal sehen, ob sich dann meine Probleme in Luft auflösen....

                      Kommentar


                        #12
                        Zitat von Steevee Beitrag anzeigen
                        Wenn das Seitenfenster des Browsers ein anderes Höhe/Breite-Verhältnis wie die Seite hat, gibts da ja schwarze Balken. Kann man die Farbe irgendwo definieren (Schwarz ist mir zu dunkel)?
                        ja kannst du, custom.css im gleichen Verzeichnis wie die xstart.htm mit
                        Code:
                        body {
                            background-color: green !important;
                        }
                        oder welche Farbe auch immer du gerne hättest.

                        Zitat von Steevee Beitrag anzeigen
                        Wenn das Browserfenster größer als die Seite ist, dann wird ja vergrößert. Geht das irgendwie, das die Seite auch verkleinert wird, wenn das Browserfenster kleiner als die Seite ist?
                        geht derzeit nicht könnte ich aber als Option machen,
                        sah ein wenig komisch aus im Browser.

                        Mobile Geräte die Viewports unterstützen (iP*/Android) sollten die Visu aber auch jetzt schon skalieren.
                        Nils

                        aktuelle Bausteine:
                        BusAufsicht - ServiceCheck - Pushover - HS-Insight

                        Kommentar


                          #13
                          Zitat von NilsS Beitrag anzeigen
                          Zitat von Steevee Beitrag anzeigen
                          Wenn das Browserfenster größer als die Seite ist, dann wird ja vergrößert. Geht das irgendwie, das die Seite auch verkleinert wird, wenn das Browserfenster kleiner als die Seite ist?
                          geht derzeit nicht könnte ich aber als Option machen,
                          sah ein wenig komisch aus im Browser.
                          ist commited

                          im gleichen Pfad wie xstart.html die Datei custom.js anlegen
                          Code:
                          hs.options.scaledown = true;
                          Nils

                          aktuelle Bausteine:
                          BusAufsicht - ServiceCheck - Pushover - HS-Insight

                          Kommentar


                            #14
                            Hallo Nils,

                            das mit der Hintergrundfarbe funktioniert. Danke.

                            Das mit dem verkleinern hast du extra für mich gemacht? Du bist mein Held !!!
                            Das funktioniert auch soweit, nur das beim verkleinern das Bild nicht mehr in der Mitte ist, und das dann teilweise auch unten und oben der Balken kommt.

                            Das mit den Links bekomme ich nicht hin. Hab mir jetzt dieses Demo-Projekt angeschaut. Gibt eigentlich jetzt mehr Fragen als vorher (nicht weniger). Muss das Thema mal 2 Tage ruhen lassen, dann schau ich mir das nochmal an.

                            Gruß
                            Steevee

                            Kommentar


                              #15
                              Zitat von Steevee Beitrag anzeigen
                              Das funktioniert auch soweit, nur das beim verkleinern das Bild nicht mehr in der Mitte ist, und das dann teilweise auch unten und oben der Balken kommt.
                              War kein Problem, sind meist alles nur ein paar Zeilen code.

                              Das Problem hatte ich hier zuerst auch, war dann aber nach entfernen von width und height ok. Du testest das mit der 1920er Auflösung?

                              Ich hatte nur mit der 1024er getestet, teste aber nachher nochmal mit der 1366er.
                              Nils

                              aktuelle Bausteine:
                              BusAufsicht - ServiceCheck - Pushover - HS-Insight

                              Kommentar

                              Lädt...
                              X