128
130
typedef struct _AlmAppSelectionTreeViewPrivate AlmAppSelectionTreeViewPrivate;
130
132
#define ALM_APP_SELECTION_TREE_VIEW_TYPE_TREE_VIEW_COLS (alm_app_selection_tree_view_tree_view_cols_get_type ())
134
#define ALM_TYPE_USAGE_CELL_RENDERER (alm_usage_cell_renderer_get_type ())
135
#define ALM_USAGE_CELL_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), ALM_TYPE_USAGE_CELL_RENDERER, AlmUsageCellRenderer))
136
#define ALM_USAGE_CELL_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), ALM_TYPE_USAGE_CELL_RENDERER, AlmUsageCellRendererClass))
137
#define ALM_IS_USAGE_CELL_RENDERER(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), ALM_TYPE_USAGE_CELL_RENDERER))
138
#define ALM_IS_USAGE_CELL_RENDERER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), ALM_TYPE_USAGE_CELL_RENDERER))
139
#define ALM_USAGE_CELL_RENDERER_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), ALM_TYPE_USAGE_CELL_RENDERER, AlmUsageCellRendererClass))
141
typedef struct _AlmUsageCellRenderer AlmUsageCellRenderer;
142
typedef struct _AlmUsageCellRendererClass AlmUsageCellRendererClass;
131
143
typedef struct _AlmApplicationsChooserDialogPrivate AlmApplicationsChooserDialogPrivate;
132
144
#define _g_date_time_unref0(var) ((var == NULL) ? NULL : (var = (g_date_time_unref (var), NULL)))
133
145
#define __g_list_free__g_object_unref0_0(var) ((var == NULL) ? NULL : (var = (_g_list_free__g_object_unref0_ (var), NULL)))
146
typedef struct _AlmUsageCellRendererPrivate AlmUsageCellRendererPrivate;
134
147
typedef struct _AlmAppChooseInfoPrivate AlmAppChooseInfoPrivate;
135
148
typedef struct _AlmParamSpecAppChooseInfo AlmParamSpecAppChooseInfo;
355
391
static void alm_applications_tree_view_set_up_ui (AlmApplicationsTreeView* self);
356
392
GdkPixbuf* alm_applications_tree_view_get_pixbuf_from_gio_icon (GIcon* icon);
357
393
GtkListStore* alm_applications_tree_view_get_liststore (AlmApplicationsTreeView* self);
358
AlmAppChooseInfo* alm_app_choose_info_new (const gchar* app_name, GdkPixbuf* app_icon, const gchar* last_accessed_time, guint usage_rating);
359
AlmAppChooseInfo* alm_app_choose_info_construct (GType object_type, const gchar* app_name, GdkPixbuf* app_icon, const gchar* last_accessed_time, guint usage_rating);
394
AlmAppChooseInfo* alm_app_choose_info_new (const gchar* id, const gchar* app_name, GdkPixbuf* app_icon, const gchar* last_accessed_time, guint usage_rating);
395
AlmAppChooseInfo* alm_app_choose_info_construct (GType object_type, const gchar* id, const gchar* app_name, GdkPixbuf* app_icon, const gchar* last_accessed_time, guint usage_rating);
360
396
static void alm_applications_tree_view_finalize (GObject* obj);
361
397
static void _vala_alm_applications_tree_view_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
362
398
GType alm_app_selection_tree_view_get_type (void) G_GNUC_CONST;
383
422
static void alm_applications_chooser_dialog_set_up_ui (AlmApplicationsChooserDialog* self);
384
423
void alm_applications_chooser_dialog_handle_app_population (AlmApplicationsChooserDialog* self, GHashTable* all_actors);
385
424
static gint64* _int64_dup (gint64* self);
386
void alm_applications_chooser_dialog_insert_liststore (AlmApplicationsChooserDialog* self, GAppInfo* app_info, const gchar* last_accessed, guint usage);
425
void alm_applications_chooser_dialog_insert_liststore (AlmApplicationsChooserDialog* self, GAppInfo* app_info, const gchar* last_accessed, gint64 last_accessed_time, guint usage);
387
426
static void _g_object_unref0_ (gpointer var);
388
427
static void _g_list_free__g_object_unref0_ (GList* self);
389
428
void alm_app_choose_info_set_last_accessed (AlmAppChooseInfo* self, const gchar* value);
390
429
void alm_app_choose_info_set_usage (AlmAppChooseInfo* self, guint value);
391
430
const gchar* alm_app_choose_info_get_name (AlmAppChooseInfo* self);
392
431
GdkPixbuf* alm_app_choose_info_get_icon (AlmAppChooseInfo* self);
432
gchar* alm_app_choose_info_get_id (AlmAppChooseInfo* self);
393
433
static void alm_applications_chooser_dialog_finalize (GObject* obj);
394
434
static void _vala_alm_applications_chooser_dialog_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
435
#define ALM_USAGE_CELL_RENDERER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), ALM_TYPE_USAGE_CELL_RENDERER, AlmUsageCellRendererPrivate))
437
ALM_USAGE_CELL_RENDERER_DUMMY_PROPERTY,
438
ALM_USAGE_CELL_RENDERER_USAGE
440
#define ALM_USAGE_CELL_RENDERER_RECT_NUM 10
441
#define ALM_USAGE_CELL_RENDERER_RECT_WIDTH 5
442
#define ALM_USAGE_CELL_RENDERER_RECT_HEIGHT 20
443
#define ALM_USAGE_CELL_RENDERER_RECT_SPACING 3
444
#define ALM_USAGE_CELL_RENDERER_xpadding 25
445
#define ALM_USAGE_CELL_RENDERER_ypadding 10
446
static void alm_usage_cell_renderer_real_get_size (GtkCellRenderer* base, GtkWidget* widget, GdkRectangle* cell_area, gint* x_offset, gint* y_offset, gint* width, gint* height);
447
static void alm_usage_cell_renderer_real_render (GtkCellRenderer* base, cairo_t* ctx, GtkWidget* widget, GdkRectangle* background_area, GdkRectangle* cell_area, GtkCellRendererState flags);
448
gint alm_usage_cell_renderer_get_usage (AlmUsageCellRenderer* self);
449
void alm_usage_cell_renderer_set_usage (AlmUsageCellRenderer* self, gint value);
450
static void alm_usage_cell_renderer_finalize (GObject* obj);
451
static void _vala_alm_usage_cell_renderer_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec);
452
static void _vala_alm_usage_cell_renderer_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec);
395
453
#define ALM_APP_CHOOSE_INFO_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), ALM_TYPE_APP_CHOOSE_INFO, AlmAppChooseInfoPrivate))
397
455
ALM_APP_CHOOSE_INFO_DUMMY_PROPERTY
1350
1443
zeitgeist_event_add_subject (_tmp8_, _tmp9_);
1351
_tmp10_ = self->priv->blacklist_interface;
1352
_tmp11_ = alm_application_blacklist_interpretation_prefix;
1353
_tmp12_ = application;
1354
_tmp13_ = g_strdup_printf ("%s%s", _tmp11_, _tmp12_);
1357
alm_blacklist_add_template (_tmp10_, _tmp14_, _tmp15_);
1359
_tmp16_ = alm_application_blacklist_get_all_apps (self);
1444
_tmp10_ = zeitgeist_event_new ();
1445
_tmp11_ = g_object_ref_sink (_tmp10_);
1446
launch_ev = _tmp11_;
1447
_tmp12_ = zeitgeist_subject_new ();
1448
_tmp13_ = g_object_ref_sink (_tmp12_);
1449
launch_sub = _tmp13_;
1450
_tmp14_ = launch_sub;
1451
_tmp15_ = application;
1452
_tmp16_ = g_strdup_printf ("application://%s", _tmp15_);
1360
1453
_tmp17_ = _tmp16_;
1361
_tmp18_ = application;
1362
_tmp19_ = gee_abstract_collection_contains ((GeeAbstractCollection*) _tmp17_, _tmp18_);
1364
GeeHashSet* _tmp20_;
1365
GeeHashSet* _tmp21_;
1366
const gchar* _tmp22_;
1367
_tmp20_ = alm_application_blacklist_get_all_apps (self);
1369
_tmp22_ = application;
1370
gee_abstract_collection_add ((GeeAbstractCollection*) _tmp21_, _tmp22_);
1454
zeitgeist_subject_set_uri (_tmp14_, _tmp17_);
1456
_tmp18_ = launch_ev;
1457
_tmp19_ = launch_sub;
1458
zeitgeist_event_add_subject (_tmp18_, _tmp19_);
1459
_tmp20_ = self->priv->blacklist_interface;
1460
_tmp21_ = alm_application_blacklist_interpretation_prefix;
1461
_tmp22_ = application;
1462
_tmp23_ = g_strdup_printf ("%s%s", _tmp21_, _tmp22_);
1465
alm_blacklist_add_template (_tmp20_, _tmp24_, _tmp25_);
1467
_tmp26_ = self->priv->blacklist_interface;
1468
_tmp27_ = alm_application_blacklist_launcher_prefix;
1469
_tmp28_ = application;
1470
_tmp29_ = g_strdup_printf ("%s%s", _tmp27_, _tmp28_);
1472
_tmp31_ = launch_ev;
1473
alm_blacklist_add_template (_tmp26_, _tmp30_, _tmp31_);
1475
_tmp32_ = alm_application_blacklist_get_all_apps (self);
1477
_tmp34_ = application;
1478
_tmp35_ = gee_abstract_collection_contains ((GeeAbstractCollection*) _tmp33_, _tmp34_);
1480
GeeHashSet* _tmp36_;
1481
GeeHashSet* _tmp37_;
1482
const gchar* _tmp38_;
1483
_tmp36_ = alm_application_blacklist_get_all_apps (self);
1485
_tmp38_ = application;
1486
gee_abstract_collection_add ((GeeAbstractCollection*) _tmp37_, _tmp38_);
1488
_g_object_unref0 (launch_sub);
1489
_g_object_unref0 (launch_ev);
1372
1490
_g_object_unref0 (sub);
1373
1491
_g_object_unref0 (ev);
2053
2190
static GType alm_app_selection_tree_view_tree_view_cols_get_type (void) {
2054
2191
static volatile gsize alm_app_selection_tree_view_tree_view_cols_type_id__volatile = 0;
2055
2192
if (g_once_init_enter (&alm_app_selection_tree_view_tree_view_cols_type_id__volatile)) {
2056
static const GEnumValue values[] = {{ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_APP_NAME, "ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_APP_NAME", "app-name"}, {ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_ICON, "ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_ICON", "icon"}, {ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_DESKTOP_FILE, "ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_DESKTOP_FILE", "desktop-file"}, {ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_N_COLS, "ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_N_COLS", "n-cols"}, {0, NULL, NULL}};
2193
static const GEnumValue values[] = {{ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_APP_NAME, "ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_APP_NAME", "app-name"}, {ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_ICON, "ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_ICON", "icon"}, {ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_DESKTOP_FILE, "ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_DESKTOP_FILE", "desktop-file"}, {ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_LAST_ACCESSED_STRING, "ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_LAST_ACCESSED_STRING", "last-accessed-string"}, {ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_LAST_ACCESSED_INT, "ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_LAST_ACCESSED_INT", "last-accessed-int"}, {ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_USAGE, "ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_USAGE", "usage"}, {ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_N_COLS, "ALM_APP_SELECTION_TREE_VIEW_TREE_VIEW_COLS_N_COLS", "n-cols"}, {0, NULL, NULL}};
2057
2194
GType alm_app_selection_tree_view_tree_view_cols_type_id;
2058
2195
alm_app_selection_tree_view_tree_view_cols_type_id = g_enum_register_static ("AlmAppSelectionTreeViewTreeViewCols", values);
2059
2196
g_once_init_leave (&alm_app_selection_tree_view_tree_view_cols_type_id__volatile, alm_app_selection_tree_view_tree_view_cols_type_id);
2112
2249
GtkCellRendererText* _tmp6_;
2113
2250
GtkCellRendererText* name_rend;
2114
2251
GValue _tmp7_ = {0};
2115
GtkScrolledWindow* _tmp8_;
2116
GtkScrolledWindow* _tmp9_;
2252
GtkTreeViewColumn* _tmp8_;
2253
GtkTreeViewColumn* _tmp9_;
2254
GtkTreeViewColumn* column_used_name;
2255
GtkTreeView* _tmp10_;
2256
GtkCellRendererText* _tmp11_;
2257
GtkCellRendererText* _tmp12_;
2258
GtkCellRendererText* used_rend;
2259
GValue _tmp13_ = {0};
2260
GValue _tmp14_ = {0};
2261
GtkTreeViewColumn* _tmp15_;
2262
GtkTreeViewColumn* _tmp16_;
2263
GtkTreeViewColumn* column_usage_name;
2264
GtkTreeView* _tmp17_;
2265
AlmUsageCellRenderer* _tmp18_;
2266
AlmUsageCellRenderer* _tmp19_;
2267
AlmUsageCellRenderer* usage_rend;
2268
GtkScrolledWindow* _tmp20_;
2269
GtkScrolledWindow* _tmp21_;
2117
2270
GtkScrolledWindow* scroll;
2118
GtkTreeView* _tmp10_;
2271
GtkTreeView* _tmp22_;
2119
2272
g_return_if_fail (self != NULL);
2120
2273
_tmp0_ = gtk_tree_view_column_new ();
2121
2274
_tmp1_ = g_object_ref_sink (_tmp0_);
2138
2291
gtk_cell_layout_pack_start ((GtkCellLayout*) column_pix_name, (GtkCellRenderer*) name_rend, TRUE);
2139
2292
gtk_cell_layout_add_attribute ((GtkCellLayout*) column_pix_name, (GtkCellRenderer*) name_rend, "text", 0);
2140
2293
gtk_tree_view_column_set_resizable (column_pix_name, TRUE);
2141
_tmp8_ = (GtkScrolledWindow*) gtk_scrolled_window_new (NULL, NULL);
2294
gtk_tree_view_column_set_min_width (column_pix_name, 200);
2295
gtk_tree_view_column_set_sort_column_id (column_pix_name, 0);
2296
_tmp8_ = gtk_tree_view_column_new ();
2142
2297
_tmp9_ = g_object_ref_sink (_tmp8_);
2298
column_used_name = _tmp9_;
2299
gtk_tree_view_column_set_title (column_used_name, "Last Used");
2144
2300
_tmp10_ = self->priv->treeview;
2145
gtk_container_add ((GtkContainer*) scroll, (GtkWidget*) _tmp10_);
2301
gtk_tree_view_append_column (_tmp10_, column_used_name);
2302
_tmp11_ = (GtkCellRendererText*) gtk_cell_renderer_text_new ();
2303
_tmp12_ = g_object_ref_sink (_tmp11_);
2304
used_rend = _tmp12_;
2305
g_value_init (&_tmp13_, PANGO_TYPE_ELLIPSIZE_MODE);
2306
g_value_set_enum (&_tmp13_, PANGO_ELLIPSIZE_END);
2307
g_object_set_property ((GObject*) used_rend, "ellipsize", &_tmp13_);
2308
G_IS_VALUE (&_tmp13_) ? (g_value_unset (&_tmp13_), NULL) : NULL;
2309
gtk_cell_layout_pack_start ((GtkCellLayout*) column_used_name, (GtkCellRenderer*) used_rend, TRUE);
2310
gtk_cell_layout_add_attribute ((GtkCellLayout*) column_used_name, (GtkCellRenderer*) used_rend, "text", 3);
2311
gtk_tree_view_column_set_resizable (column_used_name, TRUE);
2312
gtk_tree_view_column_set_min_width (column_used_name, 200);
2313
gtk_tree_view_column_set_sort_column_id (column_used_name, 4);
2314
g_value_init (&_tmp14_, G_TYPE_INT);
2315
g_value_set_int (&_tmp14_, 1);
2316
g_object_set_property ((GObject*) used_rend, "xalign", &_tmp14_);
2317
G_IS_VALUE (&_tmp14_) ? (g_value_unset (&_tmp14_), NULL) : NULL;
2318
_tmp15_ = gtk_tree_view_column_new ();
2319
_tmp16_ = g_object_ref_sink (_tmp15_);
2320
column_usage_name = _tmp16_;
2321
gtk_tree_view_column_set_title (column_usage_name, "Activity");
2322
_tmp17_ = self->priv->treeview;
2323
gtk_tree_view_append_column (_tmp17_, column_usage_name);
2324
_tmp18_ = alm_usage_cell_renderer_new ();
2325
_tmp19_ = g_object_ref_sink (_tmp18_);
2326
usage_rend = _tmp19_;
2327
gtk_cell_layout_pack_start ((GtkCellLayout*) column_usage_name, (GtkCellRenderer*) usage_rend, TRUE);
2328
gtk_cell_layout_add_attribute ((GtkCellLayout*) column_usage_name, (GtkCellRenderer*) usage_rend, "usage", 5);
2329
gtk_tree_view_column_set_sort_column_id (column_usage_name, 5);
2330
_tmp20_ = (GtkScrolledWindow*) gtk_scrolled_window_new (NULL, NULL);
2331
_tmp21_ = g_object_ref_sink (_tmp20_);
2333
_tmp22_ = self->priv->treeview;
2334
gtk_container_add ((GtkContainer*) scroll, (GtkWidget*) _tmp22_);
2146
2335
gtk_scrolled_window_set_policy (scroll, GTK_POLICY_NEVER, GTK_POLICY_AUTOMATIC);
2147
2336
gtk_scrolled_window_set_shadow_type (scroll, GTK_SHADOW_IN);
2148
2337
gtk_container_set_border_width ((GtkContainer*) scroll, (guint) 1);
2149
2338
gtk_box_pack_start ((GtkBox*) self, (GtkWidget*) scroll, TRUE, TRUE, (guint) 0);
2150
2339
_g_object_unref0 (scroll);
2340
_g_object_unref0 (usage_rend);
2341
_g_object_unref0 (column_usage_name);
2342
_g_object_unref0 (used_rend);
2343
_g_object_unref0 (column_used_name);
2151
2344
_g_object_unref0 (name_rend);
2152
2345
_g_object_unref0 (pix_rend);
2153
2346
_g_object_unref0 (column_pix_name);
2254
2450
_tmp5_ = _g_hash_table_ref0 (_tmp4_);
2255
2451
_g_hash_table_unref0 (self->priv->unblocked_apps);
2256
2452
self->priv->unblocked_apps = _tmp5_;
2257
_tmp6_ = _ ("Select Application");
2258
gtk_window_set_title ((GtkWindow*) self, _tmp6_);
2453
_tmp6_ = g_str_hash;
2454
_tmp7_ = g_str_equal;
2455
_tmp8_ = g_hash_table_new_full (_tmp6_, _tmp7_, _g_free0_, _g_free0_);
2456
_g_hash_table_unref0 (self->priv->actors_iter);
2457
self->priv->actors_iter = _tmp8_;
2458
_tmp9_ = _ ("Select Application");
2459
gtk_window_set_title ((GtkWindow*) self, _tmp9_);
2259
2460
gtk_window_set_destroy_with_parent ((GtkWindow*) self, TRUE);
2260
2461
gtk_widget_set_size_request ((GtkWidget*) self, 600, 400);
2261
2462
gtk_window_set_skip_taskbar_hint ((GtkWindow*) self, TRUE);
2262
2463
gtk_container_set_border_width ((GtkContainer*) self, (guint) 12);
2263
2464
gtk_window_set_resizable ((GtkWindow*) self, FALSE);
2264
2465
alm_applications_chooser_dialog_set_up_ui (self);
2265
_tmp7_ = self->priv->app_blacklist;
2266
alm_application_blacklist_get_all_applications (_tmp7_, self);
2466
_tmp10_ = self->priv->app_blacklist;
2467
alm_application_blacklist_get_all_applications (_tmp10_, self);
2319
2513
self->priv->all_actors_list = _tmp1_;
2320
2514
_tmp2_ = g_app_info_get_all ();
2321
2515
all_infos = _tmp2_;
2322
_tmp3_ = all_actors;
2323
_tmp4_ = g_hash_table_size (_tmp3_);
2324
size_actors = _tmp4_;
2325
current_state = (gfloat) 10;
2326
_tmp5_ = current_state;
2327
_tmp6_ = size_actors;
2328
step_dec = _tmp5_ / _tmp6_;
2329
2516
other_appinfo = NULL;
2332
2519
GList* app_info_collection = NULL;
2333
2520
GList* app_info_it = NULL;
2334
app_info_collection = _tmp7_;
2521
app_info_collection = _tmp3_;
2335
2522
for (app_info_it = app_info_collection; app_info_it != NULL; app_info_it = app_info_it->next) {
2337
2524
GAppInfo* app_info = NULL;
2338
_tmp8_ = _g_object_ref0 ((GAppInfo*) app_info_it->data);
2525
_tmp4_ = _g_object_ref0 ((GAppInfo*) app_info_it->data);
2342
const gchar* _tmp10_ = NULL;
2529
const gchar* _tmp6_ = NULL;
2533
const gchar* _tmp9_;
2534
gconstpointer _tmp10_ = NULL;
2347
2536
gint64* last_accessed_time;
2350
_tmp10_ = g_app_info_get_id (_tmp9_);
2351
_tmp11_ = g_strdup (_tmp10_);
2353
_tmp12_ = (gint64) 0;
2354
_tmp13_ = __int64_dup0 (&_tmp12_);
2355
last_accessed_time = _tmp13_;
2356
_tmp14_ = last_accessed_time;
2357
if (_tmp14_ != NULL) {
2539
_tmp6_ = g_app_info_get_id (_tmp5_);
2540
_tmp7_ = g_strdup (_tmp6_);
2542
_tmp8_ = all_actors;
2544
_tmp10_ = g_hash_table_lookup (_tmp8_, _tmp9_);
2545
_tmp11_ = __int64_dup0 ((gint64*) _tmp10_);
2546
last_accessed_time = _tmp11_;
2547
_tmp12_ = last_accessed_time;
2548
if (_tmp12_ != NULL) {
2360
2551
GDateTime* time;
2362
gchar* _tmp18_ = NULL;
2553
gchar* _tmp16_ = NULL;
2363
2554
gchar* last_accessed;
2365
gdouble _tmp20_ = 0.0;
2370
const gchar* _tmp24_;
2372
_tmp15_ = last_accessed_time;
2373
_tmp16_ = g_date_time_new_from_unix_local ((*_tmp15_) / 1000);
2376
_tmp18_ = g_date_time_format (_tmp17_, "%e %B %Y %R");
2377
last_accessed = _tmp18_;
2378
_tmp19_ = current_state;
2379
_tmp20_ = ceil ((gdouble) _tmp19_);
2380
usage = (guint) _tmp20_;
2381
_tmp21_ = current_state;
2383
current_state = _tmp21_ - _tmp22_;
2385
_tmp24_ = last_accessed;
2387
alm_applications_chooser_dialog_insert_liststore (self, _tmp23_, _tmp24_, _tmp25_);
2556
const gchar* _tmp18_;
2558
_tmp13_ = last_accessed_time;
2559
_tmp14_ = g_date_time_new_from_unix_local ((*_tmp13_) / 1000);
2562
_tmp16_ = g_date_time_format (_tmp15_, "%e %B %Y");
2563
last_accessed = _tmp16_;
2565
_tmp18_ = last_accessed;
2566
_tmp19_ = last_accessed_time;
2567
alm_applications_chooser_dialog_insert_liststore (self, _tmp17_, _tmp18_, *_tmp19_, (guint) 0);
2388
2568
_g_free0 (last_accessed);
2389
2569
_g_date_time_unref0 (time);
2394
_tmp27_ = _g_object_ref0 (_tmp26_);
2395
other_appinfo = g_list_append (other_appinfo, _tmp27_);
2575
_tmp21_ = _g_object_ref0 (_tmp20_);
2576
other_appinfo = g_list_append (other_appinfo, _tmp21_);
2578
alm_applications_chooser_dialog_insert_liststore (self, _tmp22_, "", (gint64) 0, (guint) 0);
2397
2580
_g_free0 (last_accessed_time);
2490
2677
_tmp25_ = name;
2493
gtk_list_store_set (_tmp23_, &_tmp24_, 0, _tmp25_, 1, _tmp26_, 2, _tmp27_, -1, -1);
2494
_tmp28_ = self->priv->blocked_apps;
2496
_tmp30_ = g_strdup (_tmp29_);
2499
_tmp33_ = last_accessed;
2501
_tmp35_ = alm_app_choose_info_new (_tmp31_, _tmp32_, _tmp33_, _tmp34_);
2502
g_hash_table_insert (_tmp28_, _tmp30_, _tmp35_);
2680
_tmp28_ = last_accessed;
2681
_tmp29_ = last_accessed_time;
2682
gtk_list_store_set (_tmp23_, &_tmp24_, 0, _tmp25_, 1, _tmp26_, 2, _tmp27_, 3, _tmp28_, 4, _tmp29_, 5, 0, -1, -1);
2683
_tmp30_ = self->priv->blocked_apps;
2685
_tmp32_ = g_strdup (_tmp31_);
2689
_tmp36_ = last_accessed;
2691
_tmp38_ = alm_app_choose_info_new (_tmp33_, _tmp34_, _tmp35_, _tmp36_, _tmp37_);
2692
g_hash_table_insert (_tmp30_, _tmp32_, _tmp38_);
2693
_tmp39_ = last_accessed_time;
2694
if (_tmp39_ > ((gint64) 0)) {
2695
AlmApplicationBlacklist* _tmp40_;
2696
const gchar* _tmp41_;
2697
GtkTreeIter _tmp42_;
2698
AlmAppSelectionTreeView* _tmp43_;
2699
GtkListStore* _tmp44_;
2700
GtkListStore* _tmp45_;
2701
_tmp40_ = self->priv->app_blacklist;
2704
_tmp43_ = self->priv->treeview;
2705
_tmp44_ = alm_app_selection_tree_view_get_liststore (_tmp43_);
2707
alm_application_blacklist_get_count_for_app (_tmp40_, _tmp41_, &_tmp42_, _tmp45_);
2504
AlmAppChooseInfo* _tmp36_;
2505
const gchar* _tmp37_;
2506
AlmAppChooseInfo* _tmp38_;
2508
_tmp36_ = app_choose_info;
2509
_tmp37_ = last_accessed;
2510
alm_app_choose_info_set_last_accessed (_tmp36_, _tmp37_);
2511
_tmp38_ = app_choose_info;
2513
alm_app_choose_info_set_usage (_tmp38_, _tmp39_);
2710
AlmAppChooseInfo* _tmp46_;
2711
const gchar* _tmp47_;
2712
AlmAppChooseInfo* _tmp48_;
2713
_tmp46_ = app_choose_info;
2714
_tmp47_ = last_accessed;
2715
alm_app_choose_info_set_last_accessed (_tmp46_, _tmp47_);
2716
_tmp48_ = app_choose_info;
2717
alm_app_choose_info_set_usage (_tmp48_, (guint) 0);
2515
2719
_alm_app_choose_info_unref0 (app_choose_info);
2516
2720
_g_object_unref0 (pix);
2688
AlmAppChooseInfo* alm_app_choose_info_construct (GType object_type, const gchar* app_name, GdkPixbuf* app_icon, const gchar* last_accessed_time, guint usage_rating) {
2911
AlmUsageCellRenderer* alm_usage_cell_renderer_construct (GType object_type) {
2912
AlmUsageCellRenderer * self = NULL;
2913
self = (AlmUsageCellRenderer*) g_object_new (object_type, NULL);
2914
self->priv->usage_num = 0;
2919
AlmUsageCellRenderer* alm_usage_cell_renderer_new (void) {
2920
return alm_usage_cell_renderer_construct (ALM_TYPE_USAGE_CELL_RENDERER);
2924
static void alm_usage_cell_renderer_real_get_size (GtkCellRenderer* base, GtkWidget* widget, GdkRectangle* cell_area, gint* x_offset, gint* y_offset, gint* width, gint* height) {
2925
AlmUsageCellRenderer * self;
2926
gint _vala_x_offset = 0;
2927
gint _vala_y_offset = 0;
2928
gint _vala_width = 0;
2929
gint _vala_height = 0;
2930
self = (AlmUsageCellRenderer*) base;
2931
g_return_if_fail (widget != NULL);
2932
_vala_x_offset = ALM_USAGE_CELL_RENDERER_xpadding;
2933
_vala_y_offset = ALM_USAGE_CELL_RENDERER_ypadding;
2934
_vala_width = ((ALM_USAGE_CELL_RENDERER_RECT_WIDTH * ALM_USAGE_CELL_RENDERER_RECT_NUM) + (ALM_USAGE_CELL_RENDERER_xpadding * 2)) + (ALM_USAGE_CELL_RENDERER_RECT_SPACING * 9);
2935
_vala_height = ALM_USAGE_CELL_RENDERER_RECT_HEIGHT + (ALM_USAGE_CELL_RENDERER_ypadding * 2);
2937
*x_offset = _vala_x_offset;
2940
*y_offset = _vala_y_offset;
2943
*width = _vala_width;
2946
*height = _vala_height;
2951
static void alm_usage_cell_renderer_real_render (GtkCellRenderer* base, cairo_t* ctx, GtkWidget* widget, GdkRectangle* background_area, GdkRectangle* cell_area, GtkCellRendererState flags) {
2952
AlmUsageCellRenderer * self;
2953
GdkRectangle _tmp0_;
2956
GdkRectangle _tmp2_;
2959
self = (AlmUsageCellRenderer*) base;
2960
g_return_if_fail (ctx != NULL);
2961
g_return_if_fail (widget != NULL);
2962
g_return_if_fail (background_area != NULL);
2963
g_return_if_fail (cell_area != NULL);
2964
_tmp0_ = *cell_area;
2966
x = _tmp1_ + ALM_USAGE_CELL_RENDERER_xpadding;
2967
_tmp2_ = *cell_area;
2969
y = _tmp3_ + ALM_USAGE_CELL_RENDERER_ypadding;
2995
_tmp8_ = alm_usage_cell_renderer_get_usage (self);
2997
if (!(_tmp7_ < _tmp9_)) {
3001
cairo_set_source_rgb (_tmp10_, 0.4, 0.4, 0.4);
3005
cairo_rectangle (_tmp11_, (gdouble) _tmp12_, (gdouble) _tmp13_, (gdouble) ALM_USAGE_CELL_RENDERER_RECT_WIDTH, (gdouble) ALM_USAGE_CELL_RENDERER_RECT_HEIGHT);
3007
cairo_fill (_tmp14_);
3009
x = _tmp15_ + (ALM_USAGE_CELL_RENDERER_RECT_SPACING + ALM_USAGE_CELL_RENDERER_RECT_WIDTH);
3038
_tmp20_ = alm_usage_cell_renderer_get_usage (self);
3040
if (!(_tmp19_ < (ALM_USAGE_CELL_RENDERER_RECT_NUM - _tmp21_))) {
3044
cairo_set_source_rgb (_tmp22_, 0.7, 0.7, 0.7);
3048
cairo_rectangle (_tmp23_, (gdouble) _tmp24_, (gdouble) _tmp25_, (gdouble) ALM_USAGE_CELL_RENDERER_RECT_WIDTH, (gdouble) ALM_USAGE_CELL_RENDERER_RECT_HEIGHT);
3050
cairo_fill (_tmp26_);
3052
x = _tmp27_ + (ALM_USAGE_CELL_RENDERER_RECT_SPACING + ALM_USAGE_CELL_RENDERER_RECT_WIDTH);
3059
gint alm_usage_cell_renderer_get_usage (AlmUsageCellRenderer* self) {
3062
g_return_val_if_fail (self != NULL, 0);
3063
_tmp0_ = self->priv->usage_num;
3069
void alm_usage_cell_renderer_set_usage (AlmUsageCellRenderer* self, gint value) {
3071
g_return_if_fail (self != NULL);
3074
self->priv->usage_num = 10;
3078
self->priv->usage_num = _tmp1_;
3080
g_object_notify ((GObject *) self, "usage");
3084
static void alm_usage_cell_renderer_class_init (AlmUsageCellRendererClass * klass) {
3085
alm_usage_cell_renderer_parent_class = g_type_class_peek_parent (klass);
3086
g_type_class_add_private (klass, sizeof (AlmUsageCellRendererPrivate));
3087
GTK_CELL_RENDERER_CLASS (klass)->get_size = alm_usage_cell_renderer_real_get_size;
3088
GTK_CELL_RENDERER_CLASS (klass)->render = alm_usage_cell_renderer_real_render;
3089
G_OBJECT_CLASS (klass)->get_property = _vala_alm_usage_cell_renderer_get_property;
3090
G_OBJECT_CLASS (klass)->set_property = _vala_alm_usage_cell_renderer_set_property;
3091
G_OBJECT_CLASS (klass)->finalize = alm_usage_cell_renderer_finalize;
3092
g_object_class_install_property (G_OBJECT_CLASS (klass), ALM_USAGE_CELL_RENDERER_USAGE, g_param_spec_int ("usage", "usage", "usage", G_MININT, G_MAXINT, 0, G_PARAM_STATIC_NAME | G_PARAM_STATIC_NICK | G_PARAM_STATIC_BLURB | G_PARAM_READABLE | G_PARAM_WRITABLE));
3096
static void alm_usage_cell_renderer_instance_init (AlmUsageCellRenderer * self) {
3097
self->priv = ALM_USAGE_CELL_RENDERER_GET_PRIVATE (self);
3101
static void alm_usage_cell_renderer_finalize (GObject* obj) {
3102
AlmUsageCellRenderer * self;
3103
self = ALM_USAGE_CELL_RENDERER (obj);
3104
G_OBJECT_CLASS (alm_usage_cell_renderer_parent_class)->finalize (obj);
3108
GType alm_usage_cell_renderer_get_type (void) {
3109
static volatile gsize alm_usage_cell_renderer_type_id__volatile = 0;
3110
if (g_once_init_enter (&alm_usage_cell_renderer_type_id__volatile)) {
3111
static const GTypeInfo g_define_type_info = { sizeof (AlmUsageCellRendererClass), (GBaseInitFunc) NULL, (GBaseFinalizeFunc) NULL, (GClassInitFunc) alm_usage_cell_renderer_class_init, (GClassFinalizeFunc) NULL, NULL, sizeof (AlmUsageCellRenderer), 0, (GInstanceInitFunc) alm_usage_cell_renderer_instance_init, NULL };
3112
GType alm_usage_cell_renderer_type_id;
3113
alm_usage_cell_renderer_type_id = g_type_register_static (GTK_TYPE_CELL_RENDERER, "AlmUsageCellRenderer", &g_define_type_info, 0);
3114
g_once_init_leave (&alm_usage_cell_renderer_type_id__volatile, alm_usage_cell_renderer_type_id);
3116
return alm_usage_cell_renderer_type_id__volatile;
3120
static void _vala_alm_usage_cell_renderer_get_property (GObject * object, guint property_id, GValue * value, GParamSpec * pspec) {
3121
AlmUsageCellRenderer * self;
3122
self = ALM_USAGE_CELL_RENDERER (object);
3123
switch (property_id) {
3124
case ALM_USAGE_CELL_RENDERER_USAGE:
3125
g_value_set_int (value, alm_usage_cell_renderer_get_usage (self));
3128
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
3134
static void _vala_alm_usage_cell_renderer_set_property (GObject * object, guint property_id, const GValue * value, GParamSpec * pspec) {
3135
AlmUsageCellRenderer * self;
3136
self = ALM_USAGE_CELL_RENDERER (object);
3137
switch (property_id) {
3138
case ALM_USAGE_CELL_RENDERER_USAGE:
3139
alm_usage_cell_renderer_set_usage (self, g_value_get_int (value));
3142
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, property_id, pspec);
3148
AlmAppChooseInfo* alm_app_choose_info_construct (GType object_type, const gchar* id, const gchar* app_name, GdkPixbuf* app_icon, const gchar* last_accessed_time, guint usage_rating) {
2689
3149
AlmAppChooseInfo* self = NULL;
2690
3150
const gchar* _tmp0_;
2711
3174
self->priv->last_accessed_time = _tmp5_;
2712
3175
_tmp6_ = usage_rating;
2713
3176
self->priv->usage_rating = _tmp6_;
3178
_tmp8_ = g_strdup (_tmp7_);
3179
_g_free0 (self->priv->app_id);
3180
self->priv->app_id = _tmp8_;
2718
AlmAppChooseInfo* alm_app_choose_info_new (const gchar* app_name, GdkPixbuf* app_icon, const gchar* last_accessed_time, guint usage_rating) {
2719
return alm_app_choose_info_construct (ALM_TYPE_APP_CHOOSE_INFO, app_name, app_icon, last_accessed_time, usage_rating);
3185
AlmAppChooseInfo* alm_app_choose_info_new (const gchar* id, const gchar* app_name, GdkPixbuf* app_icon, const gchar* last_accessed_time, guint usage_rating) {
3186
return alm_app_choose_info_construct (ALM_TYPE_APP_CHOOSE_INFO, id, app_name, app_icon, last_accessed_time, usage_rating);
3190
gchar* alm_app_choose_info_get_id (AlmAppChooseInfo* self) {
3191
gchar* result = NULL;
3192
const gchar* _tmp0_;
3194
g_return_val_if_fail (self != NULL, NULL);
3195
_tmp0_ = self->priv->app_id;
3196
_tmp1_ = g_strdup (_tmp0_);