[SCM] Development fot GoFind! branch, master, updated. 47bb8ccf1d8ae277770a26df9e3c624d8bb0d402
Miriam Ruiz
miriam at debian.org
Wed Apr 29 13:48:57 UTC 2009
The following commit has been merged in the master branch:
commit 47bb8ccf1d8ae277770a26df9e3c624d8bb0d402
Author: Miriam Ruiz <miriam at debian.org>
Date: Wed Apr 29 15:54:45 2009 +0200
Open filter configuration according to the XDG Base Directory Spec
diff --git a/GamesOptions.h b/GamesOptions.h
index 53a5f9b..43c1fa4 100644
--- a/GamesOptions.h
+++ b/GamesOptions.h
@@ -32,19 +32,20 @@ public:
BoolOption* out_debug;
BoolOption* out_verbose;
StringOption* gui;
+ StringOption* filter;
StringOption* gowhere;
StringOption* mainFacet;
StringOption* secondaryFacet;
StringOption* ftags;
GamesOptions()
- : StandardParserWithManpage("goplay", VERSION, 1, "Enrico Zini <enrico at enricozini.org> and Miriam Ruiz <little_miry at yahoo.es>")
+ : StandardParserWithManpage("goplay", VERSION, 1, "Enrico Zini <enrico at enricozini.org> and Miriam Ruiz <miriam at debian.org>")
{
usage = "[options and arguments]";
description = "Debian game browser";
longDescription =
- "GoPlay! is a Graphical User Interface (GUI) that uses DebTags"
- " for finding games in Debian easily.\n";
+ "GoFind! is a Graphical User Interface (GUI) that uses DebTags"
+ " for finding programs in Debian easily.\n";
// add( name, shortName, longName, usage, description )
@@ -54,6 +55,8 @@ public:
"enable debugging output (including verbose output)");
gui = add<StringOption>("gui", 0, "gui", "plugin",
"select the user interface flavour. ");
+ filter = add<StringOption>("filter", 0, "filter", "file",
+ "select the filter configuration file. ");
gowhere = add<StringOption>("go", 0, "go", "where",
"change the interface flavour. "
"Available flavours are: play, learn, admin, net, office, safe, web");
diff --git a/gofind.cpp b/gofind.cpp
index 7416a5e..a25ec7b 100644
--- a/gofind.cpp
+++ b/gofind.cpp
@@ -192,14 +192,26 @@ int main(int argc, const char* argv[])
pkgdata.globalFilter = fquery;
}
- pkgdata.GetPackageFilter().Clean();
- xdgHandle xdg_handle;
- if (xdgInitHandle(&xdg_handle))
+ if (opts.filter->isSet())
{
- pkgdata.GetPackageFilter().Load("filter.cfg");
- xdgWipeHandle(&xdg_handle);
+ pkgdata.GetPackageFilter().Load(opts.filter->stringValue().c_str());
+ }
+ else
+ {
+ pkgdata.GetPackageFilter().Clean();
+ xdgHandle xdg_handle;
+ if (xdgInitHandle(&xdg_handle))
+ {
+ FILE *fd=xdgConfigOpen("gofind/filter.cfg", "rb", &xdg_handle);
+ if (fd)
+ {
+ pkgdata.GetPackageFilter().Load(fd);
+ fclose(fd);
+ }
+ xdgWipeHandle(&xdg_handle);
+ }
+ else std::cerr << "Error initializing XDG Handle" << std::endl;
}
- else std::cerr << "Error initializing XDG Handle" << std::endl;
/*
cerr << " *** Initial:" << endl;
--
Development fot GoFind!
More information about the Pkg-games-commits
mailing list