Commit Graph

10 Commits

Author SHA1 Message Date
e49720ecfa Preset subdirs (#385)
Scanning textures/presets dirs for textures and scanning preset dir for presets.
Scanning is now done recursively, so presets and textures can be organized into subdirectories instead of needing to be flattened into a single directory.

On POSIX systems makes use of [ftw](https://linux.die.net/man/3/ftw) which should be relatively efficient. Otherwise falls back to recursing with `dirent` (for windows).

Probably should have made an autoconf check for `ftw` instead of doing `#ifdef WIN32`. 

* Scan subdirectories in presets directory

* remove preset subdir config

* Recursively scan for textures too, add c++-17 compatibility

* Refactor directory scanning code so it's reused by texture loader and preset loader. Make cross-platform (maybe)

* filescanner in makefile

* extension filter for file loader

* make extensions match up'

* need string.h

* Add FileScanner.cpp to win build (maybe)

* scan all dirs

* #ifndef #ifdef is def fun

* bogus comment

* bleh

* bleh

* itunes plugin with c++17

* EyeTunes needs to know about the FileScanner

Co-authored-by: milkdropper.com <milkdropper.com@gmail.com>
Co-authored-by: milkdropper <59471060+milkdropper@users.noreply.github.com>
2020-07-28 22:01:56 +03:00
d4d74f6d05 Build warnings cleanup 2018-11-17 11:42:28 +01:00
b87f1ad8a3 encapsulate factory/preset alloc in one method.
throw typed exception in allocate()
2012-11-11 23:11:21 -05:00
c28c4b9efe playlist file / directory error handling fixes, resize playlist refresh fix
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/trunk@1342 6778bc44-b910-0410-a7a0-be141de4315d
2010-07-29 01:46:44 +00:00
d3abefd28c idle preset protocol
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1164 6778bc44-b910-0410-a7a0-be141de4315d
2008-09-18 07:18:24 +00:00
7581e1fe84 comment typo fix in factory() method of PresetFactoryManager
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1159 6778bc44-b910-0410-a7a0-be141de4315d
2008-09-13 17:28:09 +00:00
ec988824f4 doxy comments for preset factory manager
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1158 6778bc44-b910-0410-a7a0-be141de4315d
2008-09-13 17:27:17 +00:00
d97cff8190 added extensionHandled() check to PresetFactoryManager, now used by PresetLoader
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1151 6778bc44-b910-0410-a7a0-be141de4315d
2008-09-13 04:11:22 +00:00
fdffc84c57 multiple preset file extension support in preset factory abstract class
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1150 6778bc44-b910-0410-a7a0-be141de4315d
2008-09-13 03:51:33 +00:00
6a410275bf Embedded a preset factory manager into preset loader.
git-svn-id: https://projectm.svn.sourceforge.net/svnroot/projectm/personal/carm/represet@1149 6778bc44-b910-0410-a7a0-be141de4315d
2008-09-13 03:22:11 +00:00