dFlickr: Delphi API Kit for Flickr
About
dFlickr wraps most functions of the Flickr API and provides the necessary
classes to access users/photos/photosets/groups/pools/blogs in Flickr.
It is released under an MIT license.
dFlickr is developed by Dimitris Giannitsaros.
Download
Click here to download version 0.9.3b (2005-11-14 / 394kb)
Includes a simple demo application both in binary and source format.
Libraries
dFlickr requires:
- The Indy component suite (normally comes with Delphi).
- The XML Parser by Stefan Heymann (included in the download).
- The TMsMultiPartFormDataStream class by Shiv Kumar (included in the download).
- The MD5 Message-Digest unit (included in the download).
It has been tested on Delphi 2005/Indy10, Delphi 6/Indy 9, Delphi 5.
Applications using dFlickr
- GLFlickrShow: GLFlickrShow uses OpenGL to produce fullscreen slideshows
with smooth, candy-to-your-eyes, transition effects. GLFlickrShow feeds for pictures on the Flickr online photo-sharing service using the
Flickr API.
- Fleace: The Flickr-Enabled Automatic Changer for Everyone, is a free wallpaper changer
that retrieves pictures from Flickr based on topics of your choice.
Changelog
Version: 0.9.3b, 2005-11-14 (download)
- Updated ZIP file, to include a missing file
Version: 0.9.3, 2005-10-07 (download)
- Most code for this release was developed by Paul Traynier
- Support for new authentication
- Added TFlickrPhoto.Urls
- Added TFlickrPhoto.Rotation
- Added TFlickrPhoto.LastUpdate
- Added TFlickrPeople.IconServer
- Fixed TFlickrPhoto.IsFriend/IsFamily/IsPublic (removed underscore)
- Support for Delphi5 in demo application
- Calls to flickr.com use POST instead of GET
Version: 0.9.2, 2005-04-12 (download)
- Added support for extras field in PhotosSearch()
Version: 0.9.1, 2005-03-11 (download)
- Object functions that change properties, invalidate the cache
- Minor changes in some function names
Version: 0.9, 2005-03-09 (download)
- Upload support
Version: 0.8, 2005-03-06 (download)
- Initial version
Example
var
Flickr: TFlickr; // this is our basic object
People: TFlickrPeople;
begin
// you need an API key. You can get one from Flickr
Flickr := TFlickr.Create(EdtAPIKey.Text);
// authentication is needed for some calls
Flickr.Authenticate(EdtEmail.Text, EdtPassword.Text);
try
// this will return a TPeople object, with some properties filled (e.g. Id)
People := Flickr.PeopleFindByEmail('[email protected]'); // connects to Flickr
Print(People.Id);
// some other properties must make a new connection to Flickr to get filled
// these details are cached for future calls
Print(People.Realname); // connects to Flickr
Print(People.Location); // no need to connect to Flickr
PrintList(People.PublicPhotos); // connects to Flickr
Print(People.PublicPhotos.GetPhoto(0).Title); // no need to connect to Flickr
except
on E: Exception do Print('Error: ' + E.Message);
end;