Enable shuffle mode

Co-authored-by: data-dude92 <60513060+data-dude92@users.noreply.github.com>
This commit is contained in:
Manuel
2020-02-13 23:16:58 +01:00
parent db09dc43f2
commit d21677399d
3 changed files with 96 additions and 35 deletions

View File

@@ -26,7 +26,8 @@ int main(int argc, char *argv[])
MainWindow w;
int opt;
bool recursive = false;
while ((opt = getopt(argc, argv, "b:p:t:o:r")) != -1) {
bool shuffle = false;
while ((opt = getopt(argc, argv, "b:p:t:o:rs")) != -1) {
switch (opt) {
case 'p':
path = optarg;
@@ -43,6 +44,10 @@ int main(int argc, char *argv[])
case 'r':
recursive = true;
break;
case 's':
shuffle = true;
std::cout << "Shuffle mode is on." << std::endl;
break;
default: /* '?' */
usage(argv[0]);
return 1;
@@ -60,11 +65,21 @@ int main(int argc, char *argv[])
if (recursive)
{
pathTraverser = std::unique_ptr<PathTraverser>(new RecursivePathTraverser(path));
} else {
}
else
{
pathTraverser = std::unique_ptr<PathTraverser>(new DefaultPathTraverser(path));
}
std::unique_ptr<ImageSelector> selector = std::unique_ptr<ImageSelector>(new DefaultImageSelector(pathTraverser));
std::unique_ptr<ImageSelector> selector;
if (shuffle)
{
selector = std::unique_ptr<ImageSelector>(new ShuffleImageSelector(pathTraverser));
}
else
{
selector = std::unique_ptr<ImageSelector>(new RandomImageSelector(pathTraverser));
}
w.show();