Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   FreePascal (https://www.delphipraxis.net/74-freepascal/)
-   -   Google Calendar API (https://www.delphipraxis.net/192946-google-calendar-api.html)

Ghostwalker 5. Jun 2017 09:51

Google Calendar API
 
Moinmoin,

ich spiel grad ein bischen mit der Google Calendar API von Lazarus/Freepascal.

Im Calender-Demo funktioniert soweit auch alles, ich kann also meinen Kalender holen und die entsprechenden Events. Soweit wunderbar.

Was mir nicht gelingen will, ist das dazuholen der entsprechenden Farbcodes für die Events. Die Farb-ID wird ja mitgeliefert. Aber die Definition der Farben bekomm ich ums verrecken nicht raus, da hier der Zugriff anscheinen etwas anders funktioniert.

Kann mir da jemand helfen ?

zeras 5. Jun 2017 14:31

AW: Google Calendar API
 
Zitat:

Zitat von Ghostwalker (Beitrag 1373475)

ich spiel grad ein bischen mit der Google Calendar API von Lazarus/Freepascal.

Im Calender-Demo funktioniert soweit auch alles, ich kann also meinen Kalender holen und die entsprechenden Events. Soweit wunderbar.

Läßt sich diese direkt mit Seattle compilieren oder muss da viel anpassen?
Ich möchte nicht noch extra Lazarus oder ähnliches installieren.
Kann man die Demo + API auch separat irgendwo downloaden?

Ghostwalker 5. Jun 2017 17:33

AW: Google Calendar API
 
K.A. Ich hab Freepascal/Lazarus installiert.

Du kannst dir die API-Sourcen direkt aus dem SVN bzw Git holen.

zeras 5. Jun 2017 19:09

AW: Google Calendar API
 
Zitat:

Zitat von Ghostwalker (Beitrag 1373475)
Die Farb-ID wird ja mitgeliefert. Aber die Definition der Farben bekomm ich ums verrecken nicht raus, da hier der Zugriff anscheinen etwas anders funktioniert.

Hast du da noch ein bißchen Code?
Ich lese auch einige Sachen aus dem Kalender aus, aber mit Farben hatte ich noch keinen Bedarf.
Anscheinend sind die Infos beim Kalender hinterlegt und nicht beim Event selber.

Ghostwalker 6. Jun 2017 04:56

AW: Google Calendar API
 
Schnipp:

Delphi-Quellcode:
  Events:=FCalendarAPI.EventsResource.list(FCurrentCalendar.id,'');
  SaveRefreshToken;
  I:=0;
  if assigned(Events) then
    for Entry in Events.items do
      begin
      Inc(i);
      EN:=Entry.Summary+' '+Entry.colorId;
      if EN='' then
        EN:=Entry.id+' ('+Entry.description+')';
      if Assigned(Entry.Start) then
        if Entry.start.date<>0 then
          EN:=DateToStr(Entry.start.date)+' : '+EN
        else if Entry.start.dateTime<>0 then
          EN:=DateTimeToStr(Entry.start.datetime)+' : '+EN
        else
          EN:='(unspecified time) '+EN;
      LBEvents.Items.AddObject(IntToStr(i)+': '+EN,Entry);
      end;
Der Code liest die Events eines Kalenders aus (funktioniert so weit auch).

Mit diesem Code, lese ich die Colorresource aus:

Delphi-Quellcode:
   var
     cols : TColors;
   begin
     cols := fCalendarAPI.ColorsResource.Get;
   end;
Soweit so gut, wird auch ausgeführt und lt. dem Requestlog werden auch die Farben zurückgeliefert. Nur
finde ich keinen Weg, die Farbdefinitionen aus Cols raus zu bekommen. Es ist also weniger ein Problem der
Google-API selbst, sonder mehr des Wrappers.

EWeiss 6. Jun 2017 11:14

AW: Google Calendar API
 
Zitat:

die Farbdefinitionen aus Cols raus zu bekommen
Verstehe ich nicht ganz..
raus zu bekommen = Übergeben?

Gibt es keine WM_MESSAGE ala WM_CTLCOLOREDIT oder vergleichbar für den Kalender? Dem du die Farbe übergeben kannst.
Werfe doch mal nen Spy an und schaue welche Message für die Farbe zuständig ist.

gruss

Ghostwalker 6. Jun 2017 11:27

AW: Google Calendar API
 
:-D

Das ist eine REST-API mit der ich auf den Google-Kalender eines Accounts zugreifen kann. Die Farben werden bei Google definiert :)

Wie schon gesagt liegt das Problem vermutlich im API-Wrapper. Den lt. Rest-Log. werden die definitionen übertragen. :)

EWeiss 6. Jun 2017 11:34

AW: Google Calendar API
 
Zitat:

Zitat von Ghostwalker (Beitrag 1373547)
:-D

Das ist eine REST-API mit der ich auf den Google-Kalender eines Accounts zugreifen kann. Die Farben werden bei Google definiert :)

Wie schon gesagt liegt das Problem vermutlich im API-Wrapper. Den lt. Rest-Log. werden die definitionen übertragen. :)

Verstehe immer noch nicht sorry ;)
Du hast die Farbe kannst sie aber nicht auf den Kalender anwenden ?
Wenn ja dann sind die Farben wohl schreibgeschützt .. oder wie du sagst (Problem vermutlich im API-Wrapper)
Da wirst du dann wohl nix machen können.

gruss

uligerhardt 6. Jun 2017 12:14

AW: Google Calendar API
 
Zitat:

Zitat von Ghostwalker (Beitrag 1373494)
Du kannst dir die API-Sourcen direkt aus dem SVN bzw Git holen.

Haste mal nen Link? :mrgreen:

Ghostwalker 6. Jun 2017 12:30

AW: Google Calendar API
 
http://www.google.de:lol:

Nee im Ernst:

http://svn.freepascal.org/svn/fpc/trunk

Da is alles mit dabei. :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:27 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz