#include "widgets/modest-main-window.h"
#include "modest-widget-memory.h"
#include "widgets/modest-sort-criterium-view.h"
-#ifdef MODEST_TOOLKIT_HILDON2
-#include "modest-header-window.h"
+#include "widgets/modest-header-window.h"
+#ifdef MODEST_TOOLKIT_GTK
+#include <modest-gtk-window-mgr.h>
#endif
#include <langinfo.h>
modest_utils_show_dialog_and_forget (GtkWindow *parent_window,
GtkDialog *dialog)
{
- g_return_if_fail (GTK_IS_WINDOW(parent_window));
g_return_if_fail (GTK_IS_DIALOG(dialog));
+ g_return_if_fail (GTK_IS_WINDOW(parent_window));
gtk_window_set_transient_for (GTK_WINDOW (dialog), parent_window);
/* Destroy the dialog when it is closed: */
}
static void
-launch_sort_headers_dialog (GtkWindow *parent_window,
+launch_sort_headers_dialog (ModestWindow *parent_window,
GtkDialog *dialog)
{
ModestHeaderView *header_view = NULL;
gint attachments_sort_id;
gint priority_sort_id;
GtkTreeSortable *sortable;
-
+
/* Get header window */
- if (MODEST_IS_MAIN_WINDOW (parent_window)) {
- header_view = MODEST_HEADER_VIEW(modest_main_window_get_child_widget (MODEST_MAIN_WINDOW(parent_window),
- MODEST_MAIN_WINDOW_WIDGET_TYPE_HEADER_VIEW));
-#ifdef MODEST_TOOLKIT_HILDON2
- } else if (MODEST_IS_HEADER_WINDOW (parent_window)) {
+ if (MODEST_IS_HEADER_WINDOW (parent_window)) {
header_view = MODEST_HEADER_VIEW (modest_header_window_get_header_view (MODEST_HEADER_WINDOW (parent_window)));
-#endif
-
}
if (!header_view)
return;
-
+
/* Add sorting keys */
cols = modest_header_view_get_columns (header_view);
if (cols == NULL)
}
void
-modest_utils_run_sort_dialog (GtkWindow *parent_window,
+modest_utils_run_sort_dialog (ModestWindow *parent_window,
ModestSortDialogType type)
{
GtkWidget *dialog = NULL;
/* Build dialog */
- dialog = modest_platform_create_sort_dialog (parent_window);
+ dialog = modest_platform_create_sort_dialog (modest_toolkit_utils_parent_window (GTK_WIDGET (parent_window)));
if (dialog == NULL)
return;
modest_window_mgr_set_modal (modest_runtime_get_window_mgr (),
return result;
}
-/* cluster mcc's, based on the list
- * http://en.wikipedia.org/wiki/Mobile_country_code
- */
-static int
-effective_mcc (gint mcc)
-{
- switch (mcc) {
- case 405: return 404; /* india */
- case 441: return 440; /* japan */
- case 348: /* NOTE: see below */
- case 235: return 234; /* united kingdom */
- case 289: return 282; /* georgia */
- case 549: /* NOTE: see below */
- case 311:
- case 312:
- case 313:
- case 314:
- case 315:
- case 316: return 310; /* united states */
- default: return mcc;
- }
- /* NOTE: 348 for UK and 549 for US are not correct, but we do
- a workaround here as changing operator-wizard package is
- more difficult */
-}
-
/* each line is of the form:
xxx logical_id
NOTE: this function is NOT re-entrant, the out-param country
are static strings that should NOT be freed. and will change when
calling this function again
-
- also note, this function will return the "effective mcc", which
- is the normalized mcc for a country - ie. even if the there
- are multiple entries for the United States with various mccs,
- this function will always return 310, even if the real mcc parsed
- would be 314. see the 'effective_mcc' function above.
*/
static int
parse_mcc_mapping_line (const char* line, char** country)
mcc[2] = g_utf8_get_char (iter);
mcc[3] = '\0';
- return effective_mcc ((int) strtol ((const char*)mcc, NULL, 10));
+ return (int) strtol ((const char*)mcc, NULL, 10);
}
#define MCC_FILE_MAX_LINE_LEN 128 /* max length of a line in MCC file */
}
/* Get the territory specified for the current locale */
- territory = nl_langinfo (_NL_ADDRESS_COUNTRY_NAME);
+ territory = nl_langinfo (_NL_IDENTIFICATION_TERRITORY);
+
+ setlocale (LC_MESSAGES, "en_GB");
while (fgets (line, MCC_FILE_MAX_LINE_LEN, file) != NULL) {
int mcc;
}
}
+ setlocale (LC_MESSAGES, "");
+
/* Now we fill the model */
rewind (file);
country_hash = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, NULL);