diff options
author | jstebbins <[email protected]> | 2014-03-18 19:18:18 +0000 |
---|---|---|
committer | jstebbins <[email protected]> | 2014-03-18 19:18:18 +0000 |
commit | 0060abd6ff150f90192aba8c243f8763b66be74f (patch) | |
tree | 90c4fc15b00f700ec68290d06c171d456c68ae00 | |
parent | 59805e78efe93f18e6874c9258fa22a308b4134b (diff) |
LinGui: use GtkCellRendererSpinner instead of custom icons for queue activity
And delete unused icons
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6120 b64f7644-9d1e-0410-96f1-a4d463321fa5
-rw-r--r-- | gtk/src/Makefile.am | 14 | ||||
-rw-r--r-- | gtk/src/callbacks.c | 278 | ||||
-rw-r--r-- | gtk/src/callbacks.h | 2 | ||||
-rw-r--r-- | gtk/src/hb-pref.32.png | bin | 2943 -> 0 bytes | |||
-rw-r--r-- | gtk/src/hb-queue-pass1.16.png | bin | 243 -> 0 bytes | |||
-rw-r--r-- | gtk/src/hb-queue-pass2.16.png | bin | 285 -> 0 bytes | |||
-rw-r--r-- | gtk/src/hb-queue-subtitle.16.png | bin | 287 -> 0 bytes | |||
-rw-r--r-- | gtk/src/hb-queue.32.png | bin | 1676 -> 0 bytes | |||
-rw-r--r-- | gtk/src/hb-status-empty.32.png | bin | 4976 -> 0 bytes | |||
-rw-r--r-- | gtk/src/hb-status.32.png | bin | 4976 -> 0 bytes | |||
-rw-r--r-- | gtk/src/hb-working0.16.png | bin | 350 -> 0 bytes | |||
-rw-r--r-- | gtk/src/hb-working1.16.png | bin | 361 -> 0 bytes | |||
-rw-r--r-- | gtk/src/hb-working2.16.png | bin | 347 -> 0 bytes | |||
-rw-r--r-- | gtk/src/hb-working3.16.png | bin | 350 -> 0 bytes | |||
-rw-r--r-- | gtk/src/hb-working4.16.png | bin | 359 -> 0 bytes | |||
-rw-r--r-- | gtk/src/hb-working5.16.png | bin | 357 -> 0 bytes | |||
-rw-r--r-- | gtk/src/main.c | 13 | ||||
-rw-r--r-- | gtk/src/queuehandler.c | 11 | ||||
-rw-r--r-- | gtk/src/resources.list | 12 |
19 files changed, 134 insertions, 196 deletions
diff --git a/gtk/src/Makefile.am b/gtk/src/Makefile.am index c816e46d7..db026adeb 100644 --- a/gtk/src/Makefile.am +++ b/gtk/src/Makefile.am @@ -22,19 +22,7 @@ icons_dep = \ hb-source.svg \ hb-remove.svg \ hb-complete.16.png \ - hb-status.32.png \ - hb-status-empty.32.png \ - hb-pref.32.png \ - hb-queue-job.16.png \ - hb-queue-pass1.16.png \ - hb-queue-pass2.16.png \ - hb-queue-subtitle.16.png \ - hb-working0.16.png \ - hb-working1.16.png \ - hb-working2.16.png \ - hb-working3.16.png \ - hb-working4.16.png \ - hb-working5.16.png + hb-queue-job.16.png hb_menu = ghb.desktop diff --git a/gtk/src/callbacks.c b/gtk/src/callbacks.c index 11b94404d..4b4e076a0 100644 --- a/gtk/src/callbacks.c +++ b/gtk/src/callbacks.c @@ -2543,12 +2543,39 @@ ghb_cancel_encode2(signal_user_data_t *ud, const gchar *extra_msg) return FALSE; } +static gint +find_queue_job(GValue *queue, gint unique_id, GValue **job) +{ + GValue *js; + gint ii, count; + gint job_unique_id; + + *job = NULL; + g_debug("find_queue_job"); + if (unique_id == 0) // Invalid Id + return -1; + + count = ghb_array_len(queue); + for (ii = 0; ii < count; ii++) + { + js = ghb_array_get_nth(queue, ii); + job_unique_id = ghb_settings_get_int(js, "job_unique_id"); + if (job_unique_id == unique_id) + { + *job = js; + return ii; + } + } + return -1; +} + static void -submit_job(GValue *settings) +submit_job(signal_user_data_t *ud, GValue *settings) { static gint unique_id = 1; gchar *type, *modified, *preset; const GValue *path; + GValue *js; gboolean preset_modified; g_debug("submit_job"); @@ -2565,6 +2592,25 @@ submit_job(GValue *settings) ghb_settings_set_int(settings, "job_status", GHB_QUEUE_RUNNING); ghb_add_job (settings, unique_id); ghb_start_queue(); + + // Start queue activity spinner + int index = find_queue_job(ud->queue, unique_id, &js); + if (index >= 0) + { + GtkTreeView *treeview; + GtkTreeModel *store; + GtkTreeIter iter; + + treeview = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "queue_list")); + store = gtk_tree_view_get_model(treeview); + gchar *path = g_strdup_printf ("%d", index); + if (gtk_tree_model_get_iter_from_string(store, &iter, path)) + { + gtk_tree_store_set(GTK_TREE_STORE(store), &iter, 0, TRUE, -1); + } + g_free(path); + } + unique_id++; } @@ -2702,112 +2748,54 @@ ghb_update_pending(signal_user_data_t *ud) } GValue* -ghb_start_next_job(signal_user_data_t *ud, gboolean find_first) +ghb_start_next_job(signal_user_data_t *ud) { - static gint current = 0; - gint count, ii, jj; + gint count, ii; GValue *js; gint status; - GtkWidget *prog; + GtkWidget *progress; g_debug("start_next_job"); - prog = GHB_WIDGET(ud->builder, "progressbar"); - gtk_widget_show(prog); + progress = GHB_WIDGET(ud->builder, "progressbar"); + gtk_widget_show(progress); count = ghb_array_len(ud->queue); - if (find_first) - { // Start the first pending item in the queue - current = 0; - for (ii = 0; ii < count; ii++) - { - - js = ghb_array_get_nth(ud->queue, ii); - status = ghb_settings_get_int(js, "job_status"); - if (status == GHB_QUEUE_PENDING) - { - current = ii; - ghb_inhibit_gsm(ud); - queue_scan(ud, js); - ghb_update_pending(ud); - return js; - } - } - // Nothing pending - ghb_uninhibit_gsm(); - ghb_notify_done(ud); - return NULL; - } - // Find the next pending item after the current running item - for (ii = 0; ii < count-1; ii++) - { - js = ghb_array_get_nth(ud->queue, ii); - status = ghb_settings_get_int(js, "job_status"); - if (status == GHB_QUEUE_RUNNING) - { - for (jj = ii+1; jj < count; jj++) - { - js = ghb_array_get_nth(ud->queue, jj); - status = ghb_settings_get_int(js, "job_status"); - if (status == GHB_QUEUE_PENDING) - { - current = jj; - ghb_inhibit_gsm(ud); - queue_scan(ud, js); - ghb_update_pending(ud); - return js; - } - } - } - } - // No running item found? Maybe it was deleted - // Look for a pending item starting from the last index we started - for (ii = current; ii < count; ii++) + for (ii = 0; ii < count; ii++) { + js = ghb_array_get_nth(ud->queue, ii); status = ghb_settings_get_int(js, "job_status"); if (status == GHB_QUEUE_PENDING) { - current = ii; ghb_inhibit_gsm(ud); queue_scan(ud, js); ghb_update_pending(ud); + + // Start queue activity spinner + GtkTreeView *treeview; + GtkTreeModel *store; + GtkTreeIter iter; + + treeview = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "queue_list")); + store = gtk_tree_view_get_model(treeview); + gchar *path = g_strdup_printf ("%d", ii); + if (gtk_tree_model_get_iter_from_string(store, &iter, path)) + { + gtk_tree_store_set(GTK_TREE_STORE(store), &iter, 0, TRUE, -1); + } + g_free(path); + return js; } } - // Nothing found + // Nothing pending ghb_uninhibit_gsm(); ghb_notify_done(ud); ghb_update_pending(ud); - gtk_widget_hide(prog); + gtk_widget_hide(progress); return NULL; } -static gint -find_queue_job(GValue *queue, gint unique_id, GValue **job) -{ - GValue *js; - gint ii, count; - gint job_unique_id; - - *job = NULL; - g_debug("find_queue_job"); - if (unique_id == 0) // Invalid Id - return -1; - - count = ghb_array_len(queue); - for (ii = 0; ii < count; ii++) - { - js = ghb_array_get_nth(queue, ii); - job_unique_id = ghb_settings_get_int(js, "job_unique_id"); - if (job_unique_id == unique_id) - { - *job = js; - return ii; - } - } - return -1; -} - gchar* working_status_string(signal_user_data_t *ud, ghb_instance_status_t *status) { @@ -2932,7 +2920,7 @@ ghb_backend_events(signal_user_data_t *ud) GValue *js; gint index; GtkTreeView *treeview; - GtkTreeStore *store; + GtkTreeModel *store; GtkTreeIter iter; static gint prev_scan_state = -1; static gint prev_queue_state = -1; @@ -3056,6 +3044,34 @@ ghb_backend_events(signal_user_data_t *ud) } } + if (status.queue.unique_id != 0) + { + index = find_queue_job(ud->queue, status.queue.unique_id, &js); + if (index >= 0) + { + treeview = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "queue_list")); + store = gtk_tree_view_get_model(treeview); + gchar *path = g_strdup_printf ("%d", index); + if (gtk_tree_model_get_iter_from_string(store, &iter, path)) + { + if ((status.queue.state & GHB_STATE_WORKDONE) || + (status.queue.state & GHB_STATE_SCANDONE)) + { + gtk_tree_store_set(GTK_TREE_STORE(store), &iter, + 0, FALSE, -1); + } + else if (!(status.queue.state & GHB_STATE_PAUSED)) + { + gint pulse; + gtk_tree_model_get(store, &iter, 4, &pulse, -1); + gtk_tree_store_set(GTK_TREE_STORE(store), &iter, + 4, pulse+1, -1); + } + } + g_free(path); + } + } + if (status.queue.state & GHB_STATE_SCANNING) { // This needs to be in scanning and working since scanning @@ -3067,7 +3083,7 @@ ghb_backend_events(signal_user_data_t *ud) { ghb_clear_queue_state(GHB_STATE_SCANDONE); usleep(2000000); - submit_job(ud->current_job); + submit_job(ud, ud->current_job); ghb_update_pending(ud); } else if (status.queue.state & GHB_STATE_PAUSED) @@ -3076,26 +3092,6 @@ ghb_backend_events(signal_user_data_t *ud) } else if (status.queue.state & GHB_STATE_SEARCHING) { - static gint working = 0; - - // This needs to be in scanning and working since scanning - // happens fast enough that it can be missed - index = find_queue_job(ud->queue, status.queue.unique_id, &js); - if (status.queue.unique_id != 0 && index >= 0) - { - gchar working_icon[] = "hb-working0"; - working_icon[10] = '0' + working; - working = (working+1) % 6; - treeview = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "queue_list")); - store = GTK_TREE_STORE(gtk_tree_view_get_model(treeview)); - gchar *path = g_strdup_printf ("%d", index); - if (gtk_tree_model_get_iter_from_string( - GTK_TREE_MODEL(store), &iter, path)) - { - gtk_tree_store_set(store, &iter, 0, working_icon, -1); - } - g_free(path); - } GtkLabel *label; gchar *status_str; @@ -3118,26 +3114,6 @@ ghb_backend_events(signal_user_data_t *ud) } else if (status.queue.state & GHB_STATE_WORKING) { - static gint working = 0; - - // This needs to be in scanning and working since scanning - // happens fast enough that it can be missed - index = find_queue_job(ud->queue, status.queue.unique_id, &js); - if (status.queue.unique_id != 0 && index >= 0) - { - gchar working_icon[] = "hb-working0"; - working_icon[10] = '0' + working; - working = (working+1) % 6; - treeview = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "queue_list")); - store = GTK_TREE_STORE(gtk_tree_view_get_model(treeview)); - gchar *path = g_strdup_printf ("%d", index); - if (gtk_tree_model_get_iter_from_string( - GTK_TREE_MODEL(store), &iter, path)) - { - gtk_tree_store_set(store, &iter, 0, working_icon, -1); - } - g_free(path); - } GtkLabel *label; gchar *status_str; @@ -3161,10 +3137,11 @@ ghb_backend_events(signal_user_data_t *ud) else if (status.queue.state & GHB_STATE_WORKDONE) { gint qstatus; + const gchar *status_icon; index = find_queue_job(ud->queue, status.queue.unique_id, &js); treeview = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "queue_list")); - store = GTK_TREE_STORE(gtk_tree_view_get_model(treeview)); + store = gtk_tree_view_get_model(treeview); if (ud->cancel_encode == GHB_CANCEL_ALL || ud->cancel_encode == GHB_CANCEL_CURRENT) status.queue.error = GHB_ERROR_CANCELED; @@ -3173,54 +3150,39 @@ ghb_backend_events(signal_user_data_t *ud) case GHB_ERROR_NONE: gtk_label_set_text (work_status, _("Encode Done!")); qstatus = GHB_QUEUE_DONE; - if (js != NULL) - { - gchar *path = g_strdup_printf ("%d", index); - if (gtk_tree_model_get_iter_from_string( - GTK_TREE_MODEL(store), &iter, path)) - { - gtk_tree_store_set(store, &iter, 0, "hb-complete", -1); - } - g_free(path); - } + status_icon = "hb-complete"; break; case GHB_ERROR_CANCELED: gtk_label_set_text (work_status, _("Encode Canceled.")); qstatus = GHB_QUEUE_CANCELED; - if (js != NULL) - { - gchar *path = g_strdup_printf ("%d", index); - if (gtk_tree_model_get_iter_from_string( - GTK_TREE_MODEL(store), &iter, path)) - { - gtk_tree_store_set(store, &iter, 0, "hb-stop", -1); - } - g_free(path); - } + status_icon = "hb-stop"; break; default: gtk_label_set_text (work_status, _("Encode Failed.")); qstatus = GHB_QUEUE_CANCELED; - if (js != NULL) - { - gchar *path = g_strdup_printf ("%d", index); - if (gtk_tree_model_get_iter_from_string( - GTK_TREE_MODEL(store), &iter, path)) - { - gtk_tree_store_set(store, &iter, 0, "hb-stop", -1); - } - g_free(path); - } + status_icon = "hb-stop"; + } + if (js != NULL) + { + gchar *path = g_strdup_printf ("%d", index); + if (gtk_tree_model_get_iter_from_string(store, &iter, path)) + { + gtk_tree_store_set(GTK_TREE_STORE(store), &iter, + 1, status_icon, -1); + } + g_free(path); } gtk_progress_bar_set_fraction (progress, 1.0); ghb_clear_queue_state(GHB_STATE_WORKDONE); if (ud->job_activity_log) g_io_channel_unref(ud->job_activity_log); ud->job_activity_log = NULL; + if (js) + ghb_settings_set_int(js, "job_status", qstatus); if (ud->cancel_encode != GHB_CANCEL_ALL && ud->cancel_encode != GHB_CANCEL_FINISH) { - ud->current_job = ghb_start_next_job(ud, FALSE); + ud->current_job = ghb_start_next_job(ud); } else { @@ -3228,8 +3190,6 @@ ghb_backend_events(signal_user_data_t *ud) ud->current_job = NULL; gtk_widget_hide(GTK_WIDGET(progress)); } - if (js) - ghb_settings_set_int(js, "job_status", qstatus); ghb_save_queue(ud->queue); ud->cancel_encode = GHB_CANCEL_NONE; #if defined(_USE_APP_IND) diff --git a/gtk/src/callbacks.h b/gtk/src/callbacks.h index 25ba5a56b..b2adb0687 100644 --- a/gtk/src/callbacks.h +++ b/gtk/src/callbacks.h @@ -59,7 +59,7 @@ void ghb_error_dialog( void ghb_init_dep_map(void); void ghb_cancel_encode(signal_user_data_t *ud, const gchar *extra_msg); gboolean ghb_cancel_encode2(signal_user_data_t *ud, const gchar *extra_msg); -GValue* ghb_start_next_job(signal_user_data_t *ud, gboolean find_first); +GValue* ghb_start_next_job(signal_user_data_t *ud); void ghb_check_dependency( signal_user_data_t *ud, GtkWidget *widget, const gchar *alt_name); void ghb_do_scan( signal_user_data_t *ud, const gchar *filename, diff --git a/gtk/src/hb-pref.32.png b/gtk/src/hb-pref.32.png Binary files differdeleted file mode 100644 index 1d8ff4f20..000000000 --- a/gtk/src/hb-pref.32.png +++ /dev/null diff --git a/gtk/src/hb-queue-pass1.16.png b/gtk/src/hb-queue-pass1.16.png Binary files differdeleted file mode 100644 index 951d8a509..000000000 --- a/gtk/src/hb-queue-pass1.16.png +++ /dev/null diff --git a/gtk/src/hb-queue-pass2.16.png b/gtk/src/hb-queue-pass2.16.png Binary files differdeleted file mode 100644 index b2b5a3945..000000000 --- a/gtk/src/hb-queue-pass2.16.png +++ /dev/null diff --git a/gtk/src/hb-queue-subtitle.16.png b/gtk/src/hb-queue-subtitle.16.png Binary files differdeleted file mode 100644 index 8395b0d3d..000000000 --- a/gtk/src/hb-queue-subtitle.16.png +++ /dev/null diff --git a/gtk/src/hb-queue.32.png b/gtk/src/hb-queue.32.png Binary files differdeleted file mode 100644 index 51962a1b0..000000000 --- a/gtk/src/hb-queue.32.png +++ /dev/null diff --git a/gtk/src/hb-status-empty.32.png b/gtk/src/hb-status-empty.32.png Binary files differdeleted file mode 100644 index b00800b01..000000000 --- a/gtk/src/hb-status-empty.32.png +++ /dev/null diff --git a/gtk/src/hb-status.32.png b/gtk/src/hb-status.32.png Binary files differdeleted file mode 100644 index 41b2b57b9..000000000 --- a/gtk/src/hb-status.32.png +++ /dev/null diff --git a/gtk/src/hb-working0.16.png b/gtk/src/hb-working0.16.png Binary files differdeleted file mode 100644 index 200606b54..000000000 --- a/gtk/src/hb-working0.16.png +++ /dev/null diff --git a/gtk/src/hb-working1.16.png b/gtk/src/hb-working1.16.png Binary files differdeleted file mode 100644 index b3e0749bc..000000000 --- a/gtk/src/hb-working1.16.png +++ /dev/null diff --git a/gtk/src/hb-working2.16.png b/gtk/src/hb-working2.16.png Binary files differdeleted file mode 100644 index 11fef3188..000000000 --- a/gtk/src/hb-working2.16.png +++ /dev/null diff --git a/gtk/src/hb-working3.16.png b/gtk/src/hb-working3.16.png Binary files differdeleted file mode 100644 index 9a2187d01..000000000 --- a/gtk/src/hb-working3.16.png +++ /dev/null diff --git a/gtk/src/hb-working4.16.png b/gtk/src/hb-working4.16.png Binary files differdeleted file mode 100644 index 680505b23..000000000 --- a/gtk/src/hb-working4.16.png +++ /dev/null diff --git a/gtk/src/hb-working5.16.png b/gtk/src/hb-working5.16.png Binary files differdeleted file mode 100644 index 33fae2c28..000000000 --- a/gtk/src/hb-working5.16.png +++ /dev/null diff --git a/gtk/src/main.c b/gtk/src/main.c index e07276d70..b07a917c1 100644 --- a/gtk/src/main.c +++ b/gtk/src/main.c @@ -270,19 +270,24 @@ bind_queue_tree_model(signal_user_data_t *ud) g_debug("bind_queue_tree_model()\n"); treeview = GTK_TREE_VIEW(GHB_WIDGET(ud->builder, "queue_list")); selection = gtk_tree_view_get_selection(treeview); - treestore = gtk_tree_store_new(3, G_TYPE_STRING, G_TYPE_STRING, G_TYPE_STRING); + treestore = gtk_tree_store_new(5, G_TYPE_BOOLEAN, G_TYPE_STRING, + G_TYPE_STRING, G_TYPE_STRING, G_TYPE_INT); gtk_tree_view_set_model(treeview, GTK_TREE_MODEL(treestore)); column = gtk_tree_view_column_new(); gtk_tree_view_column_set_title(column, _("Job Information")); + cell = gtk_cell_renderer_spinner_new(); + gtk_tree_view_column_pack_start(column, cell, FALSE); + gtk_tree_view_column_add_attribute(column, cell, "active", 0); + gtk_tree_view_column_add_attribute(column, cell, "pulse", 4); cell = gtk_cell_renderer_pixbuf_new(); gtk_tree_view_column_pack_start(column, cell, FALSE); - gtk_tree_view_column_add_attribute(column, cell, "icon-name", 0); + gtk_tree_view_column_add_attribute(column, cell, "icon-name", 1); textcell = gtk_cell_renderer_text_new(); g_object_set(textcell, "wrap-mode", PANGO_WRAP_CHAR, NULL); g_object_set(textcell, "wrap-width", 500, NULL); gtk_tree_view_column_pack_start(column, textcell, TRUE); - gtk_tree_view_column_add_attribute(column, textcell, "markup", 1); + gtk_tree_view_column_add_attribute(column, textcell, "markup", 2); gtk_tree_view_append_column(treeview, GTK_TREE_VIEW_COLUMN(column)); gtk_tree_view_column_set_expand(column, TRUE); gtk_tree_view_column_set_max_width(column, 550); @@ -291,7 +296,7 @@ bind_queue_tree_model(signal_user_data_t *ud) cell = custom_cell_renderer_button_new(); column = gtk_tree_view_column_new_with_attributes( - _(""), cell, "icon-name", 2, NULL); + _(""), cell, "icon-name", 3, NULL); gtk_tree_view_column_set_min_width(column, 24); gtk_tree_view_append_column(treeview, GTK_TREE_VIEW_COLUMN(column)); diff --git a/gtk/src/queuehandler.c b/gtk/src/queuehandler.c index 3e1872d01..11f49b04b 100644 --- a/gtk/src/queuehandler.c +++ b/gtk/src/queuehandler.c @@ -144,9 +144,6 @@ add_to_queue_list(signal_user_data_t *ud, GValue *settings, GtkTreeIter *piter) case GHB_QUEUE_CANCELED: status_icon = "hb-stop"; break; - case GHB_QUEUE_RUNNING: - status_icon = "hb-working0"; - break; case GHB_QUEUE_DONE: status_icon = "hb-complete"; break; @@ -155,8 +152,8 @@ add_to_queue_list(signal_user_data_t *ud, GValue *settings, GtkTreeIter *piter) break; } // Set the status icon, job description, and delete icon button - gtk_tree_store_set(store, &iter, 0, status_icon, 1, str->str, - 2, "hb-remove", -1); + gtk_tree_store_set(store, &iter, 0, FALSE, 1, status_icon, 2, str->str, + 3, "hb-remove", -1); // Reset the string for the next line g_string_assign(str, ""); @@ -651,7 +648,7 @@ add_to_queue_list(signal_user_data_t *ud, GValue *settings, GtkTreeIter *piter) str->str[str->len-1] = 0; gtk_tree_store_append(store, &citer, &iter); - gtk_tree_store_set(store, &citer, 1, str->str, -1); + gtk_tree_store_set(store, &citer, 2, str->str, -1); g_string_free(str, TRUE); } @@ -1848,7 +1845,7 @@ queue_start_clicked_cb(GtkWidget *xwidget, signal_user_data_t *ud) if (state == GHB_STATE_IDLE) { // Add the first pending queue item and start - ud->current_job = ghb_start_next_job(ud, TRUE); + ud->current_job = ghb_start_next_job(ud); } } diff --git a/gtk/src/resources.list b/gtk/src/resources.list index 309b1743d..b05759627 100644 --- a/gtk/src/resources.list +++ b/gtk/src/resources.list @@ -11,20 +11,8 @@ <icon name="hb-source" file="hb-source.svg" /> <icon name="hb-remove" file="hb-remove.svg" /> <icon name="hb-complete" file="hb-complete.16.png" /> - <icon name="hb-status" file="hb-status.32.png" /> - <icon name="hb-status-empty" file="hb-status-empty.32.png" /> - <icon name="hb-pref" file="hb-pref.32.png" /> <icon name="hb-queue-job" file="hb-queue-job.16.png" /> - <icon name="hb-queue-pass1" file="hb-queue-pass1.16.png" /> - <icon name="hb-queue-pass2" file="hb-queue-pass2.16.png" /> - <icon name="hb-queue-subtitle" file="hb-queue-subtitle.16.png" /> <icon name="hb-edit" file="hb-edit.32.png" /> - <icon name="hb-working0" file="hb-working0.16.png" /> - <icon name="hb-working1" file="hb-working1.16.png" /> - <icon name="hb-working2" file="hb-working2.16.png" /> - <icon name="hb-working3" file="hb-working3.16.png" /> - <icon name="hb-working4" file="hb-working4.16.png" /> - <icon name="hb-working5" file="hb-working5.16.png" /> </section> <plist name="internal-defaults" file="internal_defaults.xml" /> <plist name="standard-presets" file="standard_presets.xml" /> |