summaryrefslogtreecommitdiff
path: root/src/cgg.c
AgeCommit message (Collapse)AuthorFilesLines
2015-08-29jpeg-utils: Unify media libraries initializationTomas Bzatek1-6/+4
Both MagickWand and exiv2 needs some initialization and cleanup, move it to jpeg-utils for clean includes in cgg.c. Also add explicit exiv2 XMP initialization as stated on http://dev.exiv2.org/projects/exiv2/wiki/Thread_safety: "The XMP SDK initialization function is not mutex protected, thus Exiv2::XmpParser::initialize is not thread-safe. Therefore, multi-threaded applications need to ensure that this XMP function is serialized, e.g., by calling them from an initialization section which is run before any threads are started." See also https://bugs.kde.org/show_bug.cgi?id=166424
2014-09-15theming: Allow themes to use different thumbnail image sizesTomas Bzatek1-1/+1
This change makes thumbnail image sizes more flexible by explicitly stating the particular image size is a thumbnail. And each thumbnail image size can have different squared settings. On the theme side it's now mandatory to specify which thumbnail size to use (if applicable). This allows us to have different thumbnail styles for index and album pages. This commit also removes the <squared_thumbnails> tag from setup.xml file but retains fallback for ver. 1 setup.xml files.
2014-03-21Make setup files versioned and add fallback for old versionsTomas Bzatek1-4/+20
This commit makes setup files (setup.xml and referenced design setup xml file) versioned and adds checks for correct versions. If a newer versioned file is detected, warning is printed out in assumption that a stray cgg version is used. If the version information is missing or is lower than expected version, files are read in legacy mode. Some values are left on defaults and missing mandatory values are either read from renamed keys or made up to suit current requirements. This essentially brings back compatibility with old setup.xml files that are usually part of galleries. However, some values are hardcoded and should be kept in mind to update and test the legacy mode along with future enhancements.
2013-04-22Use new glib threading APITomas Bzatek1-0/+2
The gthread library has been merged in glib and the threading API has changed a little. Since changes are negligible, there's no point of losing support of older glib releases, thus make it conditional.
2013-04-07Tweak commandline arguments descriptionTomas Bzatek1-3/+3
Be more illustrative by highlighting the arguments.
2013-04-07Strip unused template tags by defaultTomas Bzatek1-0/+3
If there's a tag defined but not used on replace table processing, this option determines whether it should be written in the generated file or ignored completely. Turned on by default, this will save a few bytes. Use commandline option '--debug-dont-strip-unused-tags' to turn it off, e.g. when debugging template files.
2013-03-17Autodetect number of threadsTomas Bzatek1-2/+22
When number of jobs is not specified, use autodetection of number of processors available in the system. This requires glib-2.35.4, checked during configure. https://bugzilla.gnome.org/show_bug.cgi?id=614930 https://bugzilla.gnome.org/show_bug.cgi?id=687223
2012-12-30setup: Introduce location section and reorganizeTomas Bzatek1-3/+3
More and more we need to know local and public locations for various features. Let's introduce general keys once and for all.
2012-12-01Use single glib.h includeTomas Bzatek1-1/+0
Please shout if it breaks compilation against older glib versions
2011-05-29Introduce new theming systemTomas Bzatek1-3/+12
This extends current templating system to another dimension, bringing the possibility to have multiple themes generated at once. The purpose is to be able to switch between multiple designs, from PC to mobile, classic vs. flat view, slideshow, etc. For the moment, only the classic theme is available. Rules: * for switching between themes, place a link inside your template manually - it's not a cgg concern, only your theming infrastructure * don't forget to define different file names for index and album pages across different themes * it's recommended to keep default theme named as "index.*" to avoid showing directory listing on webserver Notes: * some TODOs will be fixed when we have new theme using these advanced features (e.g. pictures in album pages) * TODO: introduce tag/block conditional system, allow custom user defines for each theme/page * TODO: deprecate <show_go_up>, <show_exif_table> and <border style> in favor of conditionals (these tags belong to theming)
2011-03-03Fix atom feed pathsTomas Bzatek1-0/+1
And convert it to use global path info.
2011-01-23Consolidate paths in a separate structTomas Bzatek1-1/+9
This will allow us to pass detailed path info to worker methods. Each path info instance is bound to a currently processed album and directory. Possibly move to struct TItems in the future.
2010-12-12Fix leaked structTomas Bzatek1-3/+1
2010-12-12Get rid of that global variables fearTomas Bzatek1-33/+16
2010-12-12setup: Code cleanupTomas Bzatek1-1/+2
2010-10-08Add basic Atom feed writerTomas Bzatek1-1/+33
2010-07-22Add option to generate full gallery, overriding the nofullsize switchTomas Bzatek1-6/+11
This option takes the highest priority
2010-07-19Silence error messages when searching for setup fileTomas Bzatek1-1/+3
Also print the setup file path in verbose mode.
2009-05-10Consolidate data typesTomas Bzatek1-8/+8
2009-04-25Update modeTomas Bzatek1-5/+10
By doing update, cgg will check the output structure for missing files and re-generate them as necessary. The decision whether an item (file, picture, album) needs to be updated is done by comparing timestamps (mtime specifically). Due to that reason it's important to keep this fact in mind when replacing single image which carries older timestamp than other files. Either don't use the update mode or 'touch' that new file. Changes made to any XML file will result in whole album re-generation (excluding subalbums).
2009-04-11Print statistics in verbose modeTomas Bzatek1-0/+22
2009-03-28Multithreading supportTomas Bzatek1-4/+19
Also made progress output a little bit nicer default = 1 thread at once, for safety reasons I've encountered critical issues with ImageMagick compiled with OpenMP support. Hope that package maintainers are clever. ShittyMagickWandGenesis(), ShittyMagickWandTerminus() :-)
2009-02-27Merge cgg-config.hTomas Bzatek1-2/+1
2009-02-26AutotoolizeTomas Bzatek1-0/+155