From 3c435f094d226302654e776f4f9fae148d7a5775 Mon Sep 17 00:00:00 2001 From: DrSlony Date: Thu, 26 Feb 2015 19:12:09 +0100 Subject: [PATCH] Added ability to open images for editing from the Batch Queue tab. Patch by Leanid (prizzrak), issue 2689 --- rtdata/languages/Catala | 1 + rtdata/languages/Chinese (Simplified) | 1 + rtdata/languages/Chinese (Traditional) | 1 + rtdata/languages/Czech | 1 + rtdata/languages/Dansk | 1 + rtdata/languages/Deutsch | 1 + rtdata/languages/English (US) | 1 + rtdata/languages/Espanol | 1 + rtdata/languages/Euskara | 1 + rtdata/languages/Francais | 1 + rtdata/languages/Greek | 1 + rtdata/languages/Hebrew | 1 + rtdata/languages/Italiano | 1 + rtdata/languages/Japanese | 1 + rtdata/languages/Latvian | 1 + rtdata/languages/Magyar | 1 + rtdata/languages/Nederlands | 1 + rtdata/languages/Norsk BM | 1 + rtdata/languages/Polish | 1 + rtdata/languages/Polish (Latin Characters) | 1 + rtdata/languages/Portugues (Brasil) | 1 + rtdata/languages/Russian | 1 + rtdata/languages/Serbian (Cyrilic Characters) | 1 + rtdata/languages/Serbian (Latin Characters) | 1 + rtdata/languages/Slovak | 1 + rtdata/languages/Suomi | 1 + rtdata/languages/Swedish | 1 + rtdata/languages/Turkish | 1 + rtdata/languages/default | 1 + rtgui/batchqueue.cc | 39 ++++++++++++++++++- rtgui/batchqueue.h | 7 +++- rtgui/batchqueuepanel.cc | 4 +- rtgui/batchqueuepanel.h | 4 +- rtgui/rtwindow.cc | 2 +- 34 files changed, 78 insertions(+), 7 deletions(-) diff --git a/rtdata/languages/Catala b/rtdata/languages/Catala index 04ad49d2a..8b0c1bad1 100644 --- a/rtdata/languages/Catala +++ b/rtdata/languages/Catala @@ -108,6 +108,7 @@ FILEBROWSER_PARTIALPASTEPROFILE;Enganxa - parcialment FILEBROWSER_PASTEPROFILE;Enganxa FILEBROWSER_POPUPCANCELJOB;Cancel·la treball FILEBROWSER_POPUPCOLORLABEL;Color d'etiqueta +FILEBROWSER_POPUPOPENINEDITOR;Obrir en Editor FILEBROWSER_POPUPCOPYTO;Copia a... FILEBROWSER_POPUPFILEOPERATIONS;Operacions amb fitxers FILEBROWSER_POPUPMOVEEND;Mou a la fi de la cua diff --git a/rtdata/languages/Chinese (Simplified) b/rtdata/languages/Chinese (Simplified) index 2becd1edd..10e38d207 100644 --- a/rtdata/languages/Chinese (Simplified) +++ b/rtdata/languages/Chinese (Simplified) @@ -87,6 +87,7 @@ FILEBROWSER_PARTIALPASTEPROFILE;选择性粘贴 FILEBROWSER_PASTEPROFILE;粘贴配置 FILEBROWSER_POPUPCANCELJOB;取消任务 FILEBROWSER_POPUPCOLORLABEL;彩色标帖 +FILEBROWSER_POPUPOPENINEDITOR;打开在编辑器 FILEBROWSER_POPUPCOPYTO;复制至... FILEBROWSER_POPUPFILEOPERATIONS;文件操作 FILEBROWSER_POPUPMOVEEND;移动到队列尾部 diff --git a/rtdata/languages/Chinese (Traditional) b/rtdata/languages/Chinese (Traditional) index fbb59a07c..20494b3db 100644 --- a/rtdata/languages/Chinese (Traditional) +++ b/rtdata/languages/Chinese (Traditional) @@ -41,6 +41,7 @@ FILEBROWSER_EMPTYTRASH;Empty Trash FILEBROWSER_PARTIALPASTEPROFILE;Partial paste FILEBROWSER_PASTEPROFILE;Paste profile FILEBROWSER_POPUPCANCELJOB;Cancel job +FILEBROWSER_POPUPOPENINEDITOR;Open in Editor FILEBROWSER_POPUPMOVEEND;Move to end of queue FILEBROWSER_POPUPMOVEHEAD;Move to head of queue FILEBROWSER_POPUPOPEN;Open diff --git a/rtdata/languages/Czech b/rtdata/languages/Czech index 283806cc5..962d20018 100644 --- a/rtdata/languages/Czech +++ b/rtdata/languages/Czech @@ -153,6 +153,7 @@ FILEBROWSER_POPUPCOLORLABEL3;Štítek: Zelený FILEBROWSER_POPUPCOLORLABEL4;Štítek: Modrý FILEBROWSER_POPUPCOLORLABEL5;Štítek: Nachový FILEBROWSER_POPUPCOLORLABEL;Barevný štítek +FILEBROWSER_POPUPOPENINEDITOR;Otevřít v editoru FILEBROWSER_POPUPCOPYTO;Kopírovat do... FILEBROWSER_POPUPFILEOPERATIONS;Souborové operace FILEBROWSER_POPUPMOVEEND;Přesunout na konec fronty diff --git a/rtdata/languages/Dansk b/rtdata/languages/Dansk index 8ff95a693..404587d00 100644 --- a/rtdata/languages/Dansk +++ b/rtdata/languages/Dansk @@ -38,6 +38,7 @@ FILEBROWSER_EMPTYTRASHHINT;Slet filerne i papirkurv permanent FILEBROWSER_EMPTYTRASH;Tøm papirkurv FILEBROWSER_PARTIALPASTEPROFILE;Indsæt delvist FILEBROWSER_PASTEPROFILE;Indsæt profil +FILEBROWSER_POPUPOPENINEDITOR;Åbn i Editor FILEBROWSER_POPUPCANCELJOB;Annuler opgave FILEBROWSER_POPUPMOVEEND;Flyt til slutning af køen FILEBROWSER_POPUPMOVEHEAD;Flyt til starten af køen diff --git a/rtdata/languages/Deutsch b/rtdata/languages/Deutsch index 4f439506a..ce9fa70f3 100644 --- a/rtdata/languages/Deutsch +++ b/rtdata/languages/Deutsch @@ -129,6 +129,7 @@ FILEBROWSER_PARTIALPASTEPROFILE;Profil selektiv einfügen FILEBROWSER_PASTEPROFILE;Profil einfügen FILEBROWSER_POPUPCANCELJOB;Job abbrechen FILEBROWSER_POPUPCOLORLABEL;Farbmarkierung +FILEBROWSER_POPUPOPENINEDITOR;Im Editor öffnen FILEBROWSER_POPUPCOPYTO;Kopieren nach... FILEBROWSER_POPUPFILEOPERATIONS;Dateioperationen FILEBROWSER_POPUPMOVEEND;An das Ende der Warteschlange verschieben diff --git a/rtdata/languages/English (US) b/rtdata/languages/English (US) index 610cd2f06..967013dc4 100644 --- a/rtdata/languages/English (US) +++ b/rtdata/languages/English (US) @@ -122,6 +122,7 @@ !FILEBROWSER_POPUPCOLORLABEL4;Label: Blue !FILEBROWSER_POPUPCOLORLABEL5;Label: Purple !FILEBROWSER_POPUPCOLORLABEL;Color label +!FILEBROWSER_POPUPOPENINEDITOR;Open in Editor !FILEBROWSER_POPUPCOPYTO;Copy to... !FILEBROWSER_POPUPFILEOPERATIONS;File operations !FILEBROWSER_POPUPMOVEEND;Move to end of queue diff --git a/rtdata/languages/Espanol b/rtdata/languages/Espanol index 4e4ff0990..d13385a27 100644 --- a/rtdata/languages/Espanol +++ b/rtdata/languages/Espanol @@ -179,6 +179,7 @@ FILEBROWSER_POPUPCOLORLABEL3;Etiqueta: Verde FILEBROWSER_POPUPCOLORLABEL4;Etiqueta: Azul FILEBROWSER_POPUPCOLORLABEL5;Etiqueta: Púrpura FILEBROWSER_POPUPCOLORLABEL;Etiquetar con un color +FILEBROWSER_POPUPOPENINEDITOR;Abrir en Editor FILEBROWSER_POPUPCOPYTO;Copiar a... FILEBROWSER_POPUPFILEOPERATIONS;Operaciones con archivos FILEBROWSER_POPUPMOVEEND;Mover hacia el final de la cola diff --git a/rtdata/languages/Euskara b/rtdata/languages/Euskara index a074c7792..1dddb6afa 100644 --- a/rtdata/languages/Euskara +++ b/rtdata/languages/Euskara @@ -41,6 +41,7 @@ FILEBROWSER_PASTEPROFILE;Paste profile FILEBROWSER_POPUPCANCELJOB;Cancel job FILEBROWSER_POPUPMOVEEND;Move to end of queue FILEBROWSER_POPUPMOVEHEAD;Move to head of queue +FILEBROWSER_POPUPOPENINEDITOR;Open in Editor FILEBROWSER_POPUPOPEN;Open FILEBROWSER_POPUPPROCESS;Put to processing queue FILEBROWSER_POPUPREMOVE;Remove from filesystem diff --git a/rtdata/languages/Francais b/rtdata/languages/Francais index a75779d5e..94c988531 100644 --- a/rtdata/languages/Francais +++ b/rtdata/languages/Francais @@ -119,6 +119,7 @@ FILEBROWSER_POPUPCOLORLABEL3;Label: Vert FILEBROWSER_POPUPCOLORLABEL4;Label: Bleu FILEBROWSER_POPUPCOLORLABEL5;Label: Pourpre FILEBROWSER_POPUPCOLORLABEL;Label couleur +FILEBROWSER_POPUPOPENINEDITOR;Ouvrir dans l'éditeur FILEBROWSER_POPUPCOPYTO;Copier vers... FILEBROWSER_POPUPFILEOPERATIONS;Opérations sur les fichiers FILEBROWSER_POPUPMOVEEND;Déplacer à la fin de la file diff --git a/rtdata/languages/Greek b/rtdata/languages/Greek index ed5c8c5df..b7dbd0191 100644 --- a/rtdata/languages/Greek +++ b/rtdata/languages/Greek @@ -41,6 +41,7 @@ FILEBROWSER_PASTEPROFILE;Paste profile FILEBROWSER_POPUPCANCELJOB;Cancel job FILEBROWSER_POPUPMOVEEND;Move to end of queue FILEBROWSER_POPUPMOVEHEAD;Move to head of queue +FILEBROWSER_POPUPOPENINEDITOR;Open in Editor FILEBROWSER_POPUPOPEN;Open FILEBROWSER_POPUPPROCESS;Put to processing queue FILEBROWSER_POPUPREMOVE;Remove from filesystem diff --git a/rtdata/languages/Hebrew b/rtdata/languages/Hebrew index b1eff937d..9881644ff 100644 --- a/rtdata/languages/Hebrew +++ b/rtdata/languages/Hebrew @@ -41,6 +41,7 @@ FILEBROWSER_PASTEPROFILE;Paste profile FILEBROWSER_POPUPCANCELJOB;Cancel job FILEBROWSER_POPUPMOVEEND;Move to end of queue FILEBROWSER_POPUPMOVEHEAD;Move to head of queue +FILEBROWSER_POPUPOPENINEDITOR;Open in Editor FILEBROWSER_POPUPOPEN;Open FILEBROWSER_POPUPPROCESS;Put to processing queue FILEBROWSER_POPUPREMOVE;Remove from filesystem diff --git a/rtdata/languages/Italiano b/rtdata/languages/Italiano index 904214451..6ea93a3eb 100644 --- a/rtdata/languages/Italiano +++ b/rtdata/languages/Italiano @@ -123,6 +123,7 @@ FILEBROWSER_POPUPCOLORLABEL3;Etichetta: Verde FILEBROWSER_POPUPCOLORLABEL4;Etichetta: Blu FILEBROWSER_POPUPCOLORLABEL5;Etichetta: Viola FILEBROWSER_POPUPCOLORLABEL;Etichetta colorata +FILEBROWSER_POPUPOPENINEDITOR;Apri in Editor FILEBROWSER_POPUPCOPYTO;Copia in... FILEBROWSER_POPUPFILEOPERATIONS;Operazioni sul file FILEBROWSER_POPUPMOVEEND;Sposta in fondo alla coda diff --git a/rtdata/languages/Japanese b/rtdata/languages/Japanese index e213e1b43..e83970c68 100644 --- a/rtdata/languages/Japanese +++ b/rtdata/languages/Japanese @@ -146,6 +146,7 @@ FILEBROWSER_POPUPCOLORLABEL3;ラベル: グリーン FILEBROWSER_POPUPCOLORLABEL4;ラベル: ブルー FILEBROWSER_POPUPCOLORLABEL5;ラベル: パープル FILEBROWSER_POPUPCOLORLABEL;カラー・ラベル +FILEBROWSER_POPUPOPENINEDITOR;エディタで開く FILEBROWSER_POPUPCOPYTO;コピーします... FILEBROWSER_POPUPFILEOPERATIONS;ファイルの操作 FILEBROWSER_POPUPMOVEEND;キュー処理の最後に移動 diff --git a/rtdata/languages/Latvian b/rtdata/languages/Latvian index c0c7a4ee4..273bd5fc2 100644 --- a/rtdata/languages/Latvian +++ b/rtdata/languages/Latvian @@ -41,6 +41,7 @@ FILEBROWSER_PASTEPROFILE;Ielīmēt profilu FILEBROWSER_POPUPCANCELJOB;Atcelt darbu FILEBROWSER_POPUPMOVEEND;Pārvietot uz rindas beigām FILEBROWSER_POPUPMOVEHEAD;Pārvietot uz rindas sākumu +FILEBROWSER_POPUPOPENINEDITOR;Atvērt redaktorā FILEBROWSER_POPUPOPEN;Atvērt FILEBROWSER_POPUPPROCESS;Ielikt apstrādes rindā FILEBROWSER_POPUPREMOVE;Dzēst no failu sistēmas diff --git a/rtdata/languages/Magyar b/rtdata/languages/Magyar index 28d97e596..107917f8f 100644 --- a/rtdata/languages/Magyar +++ b/rtdata/languages/Magyar @@ -104,6 +104,7 @@ FILEBROWSER_PARTIALPASTEPROFILE;Részleges beillesztés FILEBROWSER_PASTEPROFILE;Feldolgozási paraméterek beillesztése FILEBROWSER_POPUPCANCELJOB;Eltávolítás a sorból FILEBROWSER_POPUPCOLORLABEL;Színcímke +FILEBROWSER_POPUPOPENINEDITOR;Open in Szerkesztő FILEBROWSER_POPUPCOPYTO;Másolás máshová... FILEBROWSER_POPUPFILEOPERATIONS;Állományműveletek FILEBROWSER_POPUPMOVEEND;Végére mozgatás diff --git a/rtdata/languages/Nederlands b/rtdata/languages/Nederlands index b3bfbbfbc..969618a1a 100644 --- a/rtdata/languages/Nederlands +++ b/rtdata/languages/Nederlands @@ -130,6 +130,7 @@ FILEBROWSER_POPUPCOLORLABEL3;Label: Groen FILEBROWSER_POPUPCOLORLABEL4;Label: Blauw FILEBROWSER_POPUPCOLORLABEL5;Label: Paars FILEBROWSER_POPUPCOLORLABEL;Kleur label +FILEBROWSER_POPUPOPENINEDITOR;Open in Editor FILEBROWSER_POPUPCOPYTO;Kopieer naar... FILEBROWSER_POPUPFILEOPERATIONS;Bestandsbewerkingen FILEBROWSER_POPUPMOVEEND;Naar eind van verwerkingsrij diff --git a/rtdata/languages/Norsk BM b/rtdata/languages/Norsk BM index 29f7d43c6..e4f5dba3d 100644 --- a/rtdata/languages/Norsk BM +++ b/rtdata/languages/Norsk BM @@ -41,6 +41,7 @@ FILEBROWSER_PASTEPROFILE;Lim inn profil FILEBROWSER_POPUPCANCELJOB;Avbryt jobben FILEBROWSER_POPUPMOVEEND;Flytt til enden av køen FILEBROWSER_POPUPMOVEHEAD;Flytt til begynnelsen av køen +FILEBROWSER_POPUPOPENINEDITOR;Åpne i Editor FILEBROWSER_POPUPOPEN;Åpne FILEBROWSER_POPUPPROCESS;Legg til i prosesseringskøen FILEBROWSER_POPUPREMOVE;Fjern fra filsystem diff --git a/rtdata/languages/Polish b/rtdata/languages/Polish index 9e64e2da6..fd45e40a2 100644 --- a/rtdata/languages/Polish +++ b/rtdata/languages/Polish @@ -127,6 +127,7 @@ FILEBROWSER_POPUPCOLORLABEL3;Etykieta: Zielona FILEBROWSER_POPUPCOLORLABEL4;Etykieta: Niebieska FILEBROWSER_POPUPCOLORLABEL5;Etykieta: Purpurowa FILEBROWSER_POPUPCOLORLABEL;Kolorowa etykieta +FILEBROWSER_POPUPOPENINEDITOR;Otwórz w edytorze FILEBROWSER_POPUPCOPYTO;Skopiuj do... FILEBROWSER_POPUPFILEOPERATIONS;Operacje na plikach FILEBROWSER_POPUPMOVEEND;Przenieś na koniec kolejki diff --git a/rtdata/languages/Polish (Latin Characters) b/rtdata/languages/Polish (Latin Characters) index 77d9674fb..d6c438d70 100644 --- a/rtdata/languages/Polish (Latin Characters) +++ b/rtdata/languages/Polish (Latin Characters) @@ -127,6 +127,7 @@ FILEBROWSER_POPUPCOLORLABEL3;Etykieta: Zielona FILEBROWSER_POPUPCOLORLABEL4;Etykieta: Niebieska FILEBROWSER_POPUPCOLORLABEL5;Etykieta: Purpurowa FILEBROWSER_POPUPCOLORLABEL;Kolorowa etykieta +FILEBROWSER_POPUPOPENINEDITOR;Otworz w edytorze FILEBROWSER_POPUPCOPYTO;Skopiuj do... FILEBROWSER_POPUPFILEOPERATIONS;Operacje na plikach FILEBROWSER_POPUPMOVEEND;Przenies na koniec kolejki diff --git a/rtdata/languages/Portugues (Brasil) b/rtdata/languages/Portugues (Brasil) index c4ac61266..5040d003e 100644 --- a/rtdata/languages/Portugues (Brasil) +++ b/rtdata/languages/Portugues (Brasil) @@ -41,6 +41,7 @@ FILEBROWSER_PASTEPROFILE;Colar Perfil FILEBROWSER_POPUPCANCELJOB;Cancelar trabalho FILEBROWSER_POPUPMOVEEND;Mover para o fim da fila FILEBROWSER_POPUPMOVEHEAD;Mover para o início da fila +FILEBROWSER_POPUPOPENINEDITOR;Abrir em Editor de FILEBROWSER_POPUPOPEN;Abrir FILEBROWSER_POPUPPROCESS;Colocar na fila de processamento FILEBROWSER_POPUPREMOVE;Remover do sistema de arquivos diff --git a/rtdata/languages/Russian b/rtdata/languages/Russian index d98e2b9c1..6d4ffde99 100644 --- a/rtdata/languages/Russian +++ b/rtdata/languages/Russian @@ -123,6 +123,7 @@ FILEBROWSER_POPUPCOLORLABEL3;Пометка: Зеленым FILEBROWSER_POPUPCOLORLABEL4;Пометка: Синим FILEBROWSER_POPUPCOLORLABEL5;Пометка: Фиолетовым FILEBROWSER_POPUPCOLORLABEL;Цветовая пометка +FILEBROWSER_POPUPOPENINEDITOR;Открыть в редакторе FILEBROWSER_POPUPCOPYTO;Скопировать в... FILEBROWSER_POPUPFILEOPERATIONS;Действия с файлами FILEBROWSER_POPUPMOVEEND;Переместить в конец очереди diff --git a/rtdata/languages/Serbian (Cyrilic Characters) b/rtdata/languages/Serbian (Cyrilic Characters) index 0b5f10bc1..ccc96b29d 100644 --- a/rtdata/languages/Serbian (Cyrilic Characters) +++ b/rtdata/languages/Serbian (Cyrilic Characters) @@ -79,6 +79,7 @@ FILEBROWSER_PARTIALPASTEPROFILE;Делимично убаци FILEBROWSER_PASTEPROFILE;Убаци профил FILEBROWSER_POPUPCANCELJOB;Откажи задатак FILEBROWSER_POPUPCOLORLABEL;Обојена ознака +FILEBROWSER_POPUPOPENINEDITOR;Отвори у уреднику FILEBROWSER_POPUPCOPYTO;Умножи у... FILEBROWSER_POPUPFILEOPERATIONS;Датотека FILEBROWSER_POPUPMOVEEND;Премести на крај заказаних diff --git a/rtdata/languages/Serbian (Latin Characters) b/rtdata/languages/Serbian (Latin Characters) index e261d7823..78466a723 100644 --- a/rtdata/languages/Serbian (Latin Characters) +++ b/rtdata/languages/Serbian (Latin Characters) @@ -79,6 +79,7 @@ FILEBROWSER_PARTIALPASTEPROFILE;Delimično ubaci FILEBROWSER_PASTEPROFILE;Ubaci profil FILEBROWSER_POPUPCANCELJOB;Otkaži zadatak FILEBROWSER_POPUPCOLORLABEL;Obojena oznaka +FILEBROWSER_POPUPOPENINEDITOR;Otvori u Uredniku FILEBROWSER_POPUPCOPYTO;Umnoži u... FILEBROWSER_POPUPFILEOPERATIONS;Datoteka FILEBROWSER_POPUPMOVEEND;Premesti na kraj zakazanih diff --git a/rtdata/languages/Slovak b/rtdata/languages/Slovak index b663bb730..b8df6cb6e 100644 --- a/rtdata/languages/Slovak +++ b/rtdata/languages/Slovak @@ -57,6 +57,7 @@ FILEBROWSER_PASTEPROFILE;Vložiť profil FILEBROWSER_POPUPCANCELJOB;Zrušiť úlohu FILEBROWSER_POPUPMOVEEND;Presunúť na koniec radu FILEBROWSER_POPUPMOVEHEAD;Presunúť na začiatok radu +FILEBROWSER_POPUPOPENINEDITOR;Otvoriť v editore FILEBROWSER_POPUPOPEN;Otvoriť FILEBROWSER_POPUPPROCESS;Vložiť do radu na spracovanie FILEBROWSER_POPUPREMOVE;Odstrániť zo systému súborov diff --git a/rtdata/languages/Suomi b/rtdata/languages/Suomi index 6bead9159..b496e6b3c 100644 --- a/rtdata/languages/Suomi +++ b/rtdata/languages/Suomi @@ -41,6 +41,7 @@ FILEBROWSER_PASTEPROFILE;Liitä profiili FILEBROWSER_POPUPCANCELJOB;Peruuta työ FILEBROWSER_POPUPMOVEEND;Siirrä jonon viimeiseksi FILEBROWSER_POPUPMOVEHEAD;Siirrä jonon ensimmäiseksi +FILEBROWSER_POPUPOPENINEDITOR;Avaa Editor FILEBROWSER_POPUPOPEN;Avaa FILEBROWSER_POPUPPROCESS;Laita käsittelyjonoon FILEBROWSER_POPUPREMOVE;Poista kokonaan diff --git a/rtdata/languages/Swedish b/rtdata/languages/Swedish index 174ffdd37..ff1b0201a 100644 --- a/rtdata/languages/Swedish +++ b/rtdata/languages/Swedish @@ -113,6 +113,7 @@ FILEBROWSER_PARTIALPASTEPROFILE;Klistra in partiell profil FILEBROWSER_PASTEPROFILE;Klistra in profil FILEBROWSER_POPUPCANCELJOB;Avbryt FILEBROWSER_POPUPCOLORLABEL;Färgetikett +FILEBROWSER_POPUPOPENINEDITOR;Öppna i Editor FILEBROWSER_POPUPCOPYTO;Kopiera till... FILEBROWSER_POPUPFILEOPERATIONS;Filaktiviteter FILEBROWSER_POPUPMOVEEND;Flytta till slutet av behandlingskön diff --git a/rtdata/languages/Turkish b/rtdata/languages/Turkish index ab9da1f1f..bdda03bfc 100644 --- a/rtdata/languages/Turkish +++ b/rtdata/languages/Turkish @@ -41,6 +41,7 @@ FILEBROWSER_PASTEPROFILE;Paste profile FILEBROWSER_POPUPCANCELJOB;Cancel job FILEBROWSER_POPUPMOVEEND;Move to end of queue FILEBROWSER_POPUPMOVEHEAD;Move to head of queue +FILEBROWSER_POPUPOPENINEDITOR;Open in Editor FILEBROWSER_POPUPOPEN;Open FILEBROWSER_POPUPPROCESS;Put to processing queue FILEBROWSER_POPUPREMOVE;Remove from filesystem diff --git a/rtdata/languages/default b/rtdata/languages/default index 654bf0523..bb1bc1347 100644 --- a/rtdata/languages/default +++ b/rtdata/languages/default @@ -122,6 +122,7 @@ FILEBROWSER_POPUPCOLORLABEL3;Label: Green FILEBROWSER_POPUPCOLORLABEL4;Label: Blue FILEBROWSER_POPUPCOLORLABEL5;Label: Purple FILEBROWSER_POPUPCOLORLABEL;Color label +FILEBROWSER_POPUPOPENINEDITOR;Open in Editor FILEBROWSER_POPUPCOPYTO;Copy to... FILEBROWSER_POPUPFILEOPERATIONS;File operations FILEBROWSER_POPUPMOVEEND;Move to end of queue diff --git a/rtgui/batchqueue.cc b/rtgui/batchqueue.cc index 6f4bd10f9..b2ba1a831 100644 --- a/rtgui/batchqueue.cc +++ b/rtgui/batchqueue.cc @@ -25,6 +25,7 @@ #include #include +#include "thumbnail.h" #include "batchqueue.h" #include "multilangmgr.h" #include "filecatalog.h" @@ -36,12 +37,14 @@ using namespace std; using namespace rtengine; -BatchQueue::BatchQueue () : processing(NULL), sequence(0), listener(NULL) { +BatchQueue::BatchQueue (FileCatalog* aFileCatalog) : processing(NULL), fileCatalog(aFileCatalog), sequence(0), listener(NULL) { location = THLOC_BATCHQUEUE; int p = 0; pmenu = new Gtk::Menu (); + + pmenu->attach (*Gtk::manage(open = new Gtk::MenuItem (M("FILEBROWSER_POPUPOPENINEDITOR"))), 0, 1, p, p+1); p++; pmenu->attach (*Gtk::manage(selall = new Gtk::MenuItem (M("FILEBROWSER_POPUPSELECTALL"))), 0, 1, p, p+1); p++; pmenu->attach (*Gtk::manage(new Gtk::SeparatorMenuItem ()), 0, 1, p, p+1); p++; @@ -61,12 +64,14 @@ BatchQueue::BatchQueue () : processing(NULL), sequence(0), listener(NULL) { // Accelerators pmaccelgroup = Gtk::AccelGroup::create (); pmenu->set_accel_group (pmaccelgroup); + open->add_accelerator ("activate", pmenu->get_accel_group(), GDK_e, Gdk::CONTROL_MASK, Gtk::ACCEL_VISIBLE); selall->add_accelerator ("activate", pmenu->get_accel_group(), GDK_a, Gdk::CONTROL_MASK, Gtk::ACCEL_VISIBLE); head->add_accelerator ("activate", pmenu->get_accel_group(), GDK_Home, (Gdk::ModifierType)0, Gtk::ACCEL_VISIBLE); tail->add_accelerator ("activate", pmenu->get_accel_group(), GDK_End, (Gdk::ModifierType)0, Gtk::ACCEL_VISIBLE); cancel->add_accelerator ("activate", pmenu->get_accel_group(), GDK_Delete, (Gdk::ModifierType)0, Gtk::ACCEL_VISIBLE); - cancel->signal_activate().connect (sigc::bind(sigc::mem_fun(*this, &BatchQueue::cancelItems), &selected)); + open->signal_activate().connect(sigc::mem_fun(*this, &BatchQueue::openLastSelectedItemInEditor)); + cancel->signal_activate().connect (sigc::bind(sigc::mem_fun(*this, &BatchQueue::cancelItems), &selected)); head->signal_activate().connect (sigc::bind(sigc::mem_fun(*this, &BatchQueue::headItems), &selected)); tail->signal_activate().connect (sigc::bind(sigc::mem_fun(*this, &BatchQueue::tailItems), &selected)); selall->signal_activate().connect (sigc::mem_fun(*this, &BatchQueue::selectAll)); @@ -126,6 +131,10 @@ void BatchQueue::rightClicked (ThumbBrowserEntryBase* entry) { pmenu->popup (3, this->eventTime); } +void BatchQueue::doubleClicked(ThumbBrowserEntryBase* entry) { + openItemInEditor(entry); +} + bool BatchQueue::keyPressed (GdkEventKey* event) { bool ctrl = event->state & GDK_CONTROL_MASK; @@ -133,6 +142,10 @@ bool BatchQueue::keyPressed (GdkEventKey* event) { selectAll (); return true; } + else if ((event->keyval==GDK_E || event->keyval== GDK_e) && ctrl) { + openLastSelectedItemInEditor(); + return true; + } else if (event->keyval==GDK_Home) { headItems (&selected); return true; @@ -538,6 +551,28 @@ void BatchQueue::selectAll () { queue_draw (); } +void BatchQueue::openLastSelectedItemInEditor() { + { + // TODO: Check for Linux + #if PROTECT_VECTORS + MYREADERLOCK(l, entryRW); + #endif + + if (selected.size() > 0) { + openItemInEditor(selected.back()); + } + } +} + +void BatchQueue::openItemInEditor(ThumbBrowserEntryBase* item) { + if (item) { + std::vector< ::Thumbnail*> requestedItem; + requestedItem.push_back(item->thumbnail); + fileCatalog->openRequested(requestedItem); + } +} + + void BatchQueue::startProcessing () { if (!processing) { diff --git a/rtgui/batchqueue.h b/rtgui/batchqueue.h index 9a3571b54..f515bed29 100755 --- a/rtgui/batchqueue.h +++ b/rtgui/batchqueue.h @@ -45,6 +45,7 @@ class BatchQueue : public ThumbBrowserBase, int getThumbnailHeight (); BatchQueueEntry* processing; // holds the currently processed image + FileCatalog* fileCatalog; int sequence; // holds the current sequence index Glib::ustring nameTemplate; @@ -53,6 +54,7 @@ class BatchQueue : public ThumbBrowserBase, Gtk::ImageMenuItem* head; Gtk::ImageMenuItem* tail; Gtk::MenuItem* selall; + Gtk::MenuItem* open; Gtk::Menu* pmenu; Glib::RefPtr pmaccelgroup; @@ -65,7 +67,7 @@ class BatchQueue : public ThumbBrowserBase, void notifyListener (bool queueEmptied); public: - BatchQueue (); + BatchQueue (FileCatalog* aFileCatalog); ~BatchQueue (); void addEntries (std::vector &entries, bool head=false, bool save=true); @@ -73,6 +75,8 @@ class BatchQueue : public ThumbBrowserBase, void headItems (std::vector* items); void tailItems (std::vector* items); void selectAll (); + void openItemInEditor(ThumbBrowserEntryBase* item); + void openLastSelectedItemInEditor(); void startProcessing (); @@ -89,6 +93,7 @@ class BatchQueue : public ThumbBrowserBase, void error (Glib::ustring msg); void setProgress (double p); void rightClicked (ThumbBrowserEntryBase* entry); + void doubleClicked (ThumbBrowserEntryBase* entry); bool keyPressed (GdkEventKey* event); void buttonPressed (LWButton* button, int actionCode, void* actionData); void redrawNeeded (LWButton* button); diff --git a/rtgui/batchqueuepanel.cc b/rtgui/batchqueuepanel.cc index 983474ae5..4feb747fc 100644 --- a/rtgui/batchqueuepanel.cc +++ b/rtgui/batchqueuepanel.cc @@ -49,9 +49,9 @@ static Glib::ustring makeFolderLabel(Glib::ustring path) return path; } -BatchQueuePanel::BatchQueuePanel () { +BatchQueuePanel::BatchQueuePanel (FileCatalog* aFileCatalog) { - batchQueue = Gtk::manage( new BatchQueue() ); + batchQueue = Gtk::manage( new BatchQueue(aFileCatalog) ); // construct batch queue panel with the extra "start" and "stop" button Gtk::VBox* batchQueueButtonBox = Gtk::manage (new Gtk::VBox); diff --git a/rtgui/batchqueuepanel.h b/rtgui/batchqueuepanel.h index 033960894..55aad806a 100644 --- a/rtgui/batchqueuepanel.h +++ b/rtgui/batchqueuepanel.h @@ -25,6 +25,8 @@ #include "guiutils.h" class RTWindow; +class FileCatalog; +class Thumbnail; class BatchQueuePanel : public Gtk::VBox, public BatchQueueListener, public FormatChangeListener { @@ -52,7 +54,7 @@ class BatchQueuePanel : public Gtk::VBox, public: - BatchQueuePanel (); + BatchQueuePanel (FileCatalog* aFileCatalog); void setParent (RTWindow* p) { parent = p; } diff --git a/rtgui/rtwindow.cc b/rtgui/rtwindow.cc index c56b01d17..442d4da33 100644 --- a/rtgui/rtwindow.cc +++ b/rtgui/rtwindow.cc @@ -181,7 +181,7 @@ RTWindow::RTWindow () mainNB->append_page (*fpanel, *hbf); } - bpanel = Gtk::manage ( new BatchQueuePanel () ); + bpanel = Gtk::manage ( new BatchQueuePanel (fpanel->fileCatalog) ); bpanel->setParent (this); // decorate tab, the label is unimportant since its updated in batchqueuepanel anyway