summaryrefslogtreecommitdiff
path: root/libnautilus-extensions
diff options
context:
space:
mode:
authorJohn Sullivan <sullivan@src.gnome.org>2000-08-09 18:00:49 +0000
committerJohn Sullivan <sullivan@src.gnome.org>2000-08-09 18:00:49 +0000
commit6336ed3d907459cf55661813cd353513a752e546 (patch)
tree3bc57f6d8afe14ce38a843c94b19b049489f1dce /libnautilus-extensions
parenta939160e500d5a6c6e7184d0395c4e6be1c903bc (diff)
downloadnautilus-6336ed3d907459cf55661813cd353513a752e546.tar.gz
A little more work towards bug 1753 (search results should
start out sorted by search criteria) and a bug fix. * libnautilus-extensions/nautilus-search-bar-criterion.h: Make #define constants for the criteria parts of search URIs (e.g. "file_name", "size", "content", etc.) * libnautilus-extensions/nautilus-search-bar-criterion.c: (get_name_location_for), (get_content_location_for), (get_file_type_location_for), (get_size_location_for), (get_emblem_location_for), (get_date_modified_location_for), (get_owner_location_for): Use these constants when creating the URI used by complex search bar. * src/nautilus-simple-search-bar.c: (nautilus_simple_search_criteria_to_search_uri): Use these constants when creating the URI used by simple search bar. Also added a FIXME about how the simple search bar should be sharing the URI-generation code of the complex search bar. * src/nautilus-complex-search-bar.c: (criterion_callback): Update sensitivity of "Find" button when user chooses different criterion from menu. This fixes bug where switching from an empty text-type value to a menu-type value would leave the "Find" button insensitive.
Diffstat (limited to 'libnautilus-extensions')
-rw-r--r--libnautilus-extensions/nautilus-search-bar-criterion.c24
-rw-r--r--libnautilus-extensions/nautilus-search-bar-criterion.h8
2 files changed, 23 insertions, 9 deletions
diff --git a/libnautilus-extensions/nautilus-search-bar-criterion.c b/libnautilus-extensions/nautilus-search-bar-criterion.c
index d7f166726..8a4875318 100644
--- a/libnautilus-extensions/nautilus-search-bar-criterion.c
+++ b/libnautilus-extensions/nautilus-search-bar-criterion.c
@@ -517,7 +517,7 @@ nautilus_search_bar_criterion_human_from_uri (const char *location_uri)
static char *
get_name_location_for (int relation_number, char *name_text)
{
- const char *possible_relations[] = { "contains",
+ const char *possible_relations[] = {"contains",
"starts_with",
"ends_with",
"matches_glob",
@@ -526,7 +526,8 @@ get_name_location_for (int relation_number, char *name_text)
g_assert (relation_number >= 0);
g_assert (relation_number < 5);
- return g_strdup_printf ("file_name %s %s", possible_relations[relation_number],
+ return g_strdup_printf ("%s %s %s", NAUTILUS_SEARCH_URI_TEXT_NAME,
+ possible_relations[relation_number],
name_text);
}
@@ -539,7 +540,8 @@ get_content_location_for (int relation_number, char *name_text)
g_assert (relation_number == 0 || relation_number == 1);
- return g_strdup_printf ("content %s %s", possible_relations[relation_number],
+ return g_strdup_printf ("%s %s %s", NAUTILUS_SEARCH_URI_TEXT_CONTENT,
+ possible_relations[relation_number],
name_text);
}
@@ -553,7 +555,8 @@ get_file_type_location_for (int relation_number,
g_assert (relation_number == 0 || relation_number == 1);
g_assert (value_number >= 0);
g_assert (value_number < 5);
- return g_strdup_printf ("file_type %s %s", possible_relations[relation_number],
+ return g_strdup_printf ("%s %s %s", NAUTILUS_SEARCH_URI_TEXT_TYPE,
+ possible_relations[relation_number],
possible_values[value_number]);
}
@@ -566,7 +569,9 @@ get_size_location_for (int relation_number,
g_assert (relation_number == 0 || relation_number == 1);
/* FIXME: Need checks for appropriate size here */
- return g_strdup_printf ("size %s %s", possible_relations[relation_number], size_text);
+ return g_strdup_printf ("%s %s %s", NAUTILUS_SEARCH_URI_TEXT_SIZE,
+ possible_relations[relation_number],
+ size_text);
}
@@ -574,8 +579,8 @@ static char *
get_emblem_location_for (int relation_number,
int value_number)
{
- /* FIXME */
- return g_strdup ("");
+ /* FIXME: not yet implemented */
+ return g_strdup_printf ("%s ", NAUTILUS_SEARCH_URI_TEXT_EMBLEMS);
}
static char *
@@ -589,7 +594,8 @@ get_date_modified_location_for (int relation_number,
g_assert (value_number >= 0);
g_assert (value_number < 3);
- return g_strdup_printf ("mod_time %s %s", possible_relations[relation_number],
+ return g_strdup_printf ("%s %s %s", NAUTILUS_SEARCH_URI_TEXT_DATE_MODIFIED,
+ possible_relations[relation_number],
possible_values[value_number]);
}
@@ -600,7 +606,7 @@ get_owner_location_for (int relation_number,
{
const char *possible_relations[] = { "is", "is not" };
g_assert (relation_number == 0 || relation_number == 1);
- return g_strdup_printf ("owner %s %s", possible_relations[relation_number], owner_text);
+ return g_strdup_printf ("%s %s %s", NAUTILUS_SEARCH_URI_TEXT_OWNER, possible_relations[relation_number], owner_text);
}
diff --git a/libnautilus-extensions/nautilus-search-bar-criterion.h b/libnautilus-extensions/nautilus-search-bar-criterion.h
index 7ade54330..ff6194095 100644
--- a/libnautilus-extensions/nautilus-search-bar-criterion.h
+++ b/libnautilus-extensions/nautilus-search-bar-criterion.h
@@ -43,6 +43,14 @@ typedef enum {
NAUTILUS_LAST_CRITERION
} NautilusSearchBarCriterionType;
+/* These strings are used programatically; they must not be translated */
+#define NAUTILUS_SEARCH_URI_TEXT_NAME "file_name"
+#define NAUTILUS_SEARCH_URI_TEXT_CONTENT "content"
+#define NAUTILUS_SEARCH_URI_TEXT_TYPE "file"
+#define NAUTILUS_SEARCH_URI_TEXT_SIZE "size"
+#define NAUTILUS_SEARCH_URI_TEXT_EMBLEMS "emblem"
+#define NAUTILUS_SEARCH_URI_TEXT_DATE_MODIFIED "mod_time"
+#define NAUTILUS_SEARCH_URI_TEXT_OWNER "owner"
typedef struct NautilusSearchBarCriterionDetails NautilusSearchBarCriterionDetails;