Solving issue 2161: "Hide Filmstrip elements"

"t" has been remapped to "Ctrl+t" to show the content of the Trash
"t" now show/hide the film strip and update the size of the allocated space
"Shift-t" show/hide the film strip and keep the allocated space identical, preventing a main preview refresh
This commit is contained in:
Hombre
2014-11-03 20:16:06 +01:00
parent aacd088ad6
commit 1f64148fc9
28 changed files with 282 additions and 103 deletions

View File

@@ -148,7 +148,7 @@ FILEBROWSER_SHOWRANK4HINT;Exposa imatges de 4 estrelles.\nDrecera: <b>4</b>
FILEBROWSER_SHOWRANK5HINT;Exposa imatges de 5 estrelles.\nDrecera: <b>5</b>
FILEBROWSER_SHOWRECENTLYSAVEDHINT;Mostra últimes imatges desades.\nDrecera: <b>Alt-7</b>
FILEBROWSER_SHOWRECENTLYSAVEDNOTHINT;Mostra imatges no recentment desades.\nDrecera: <b>Alt-6</b>
FILEBROWSER_SHOWTRASHHINT;Veure què hi ha a la paperera.\nDrecera: <b>T</b>
FILEBROWSER_SHOWTRASHHINT;Veure què hi ha a la paperera.\nDrecera: <b>Ctrl-t</b>
FILEBROWSER_SHOWUNCOLORHINT;Mostra imatges sense etiqueta de color.\nDrecera: <b>Alt-0</b>
FILEBROWSER_SHOWUNRANKHINT;Mostra imatges sense rang.\nDrecera: <b>0</b>
FILEBROWSER_STARTPROCESSINGHINT;Inicia el processament de les imatges de la cua

View File

@@ -202,7 +202,7 @@ FILEBROWSER_SHOWRANK4HINT;Ukázat obrázky hodnocené čtyřmi hvězdičkami.\nZ
FILEBROWSER_SHOWRANK5HINT;Ukázat obrázky hodnocené pěti hvězdičkami.\nZkratka: <b>5</b>
FILEBROWSER_SHOWRECENTLYSAVEDHINT;Ukázat uložené obrázky.\nZkratka: <b>Alt-7</b>
FILEBROWSER_SHOWRECENTLYSAVEDNOTHINT;Ukázat neuložené obrázky.\nZkratka: <b>Alt-6</b>
FILEBROWSER_SHOWTRASHHINT;Ukázat obsah koše.\nZkratka: <b>t</b>
FILEBROWSER_SHOWTRASHHINT;Ukázat obsah koše.\nZkratka: <b>Ctrl-t</b>
FILEBROWSER_SHOWUNCOLORHINT;Ukázat obrázky bez barevného štítku.\nZkratka: <b>Alt-0</b>
FILEBROWSER_SHOWUNRANKHINT;Ukázat nehodnocené obrázky.\nZkratka: <b>0</b>
FILEBROWSER_STARTPROCESSINGHINT;Spustit zpracování obrázků ve frontě.

View File

@@ -174,7 +174,7 @@ FILEBROWSER_SHOWRANK4HINT;Nur mit 4 Sternen bewertete Bilder anzeigen <b>4</b>
FILEBROWSER_SHOWRANK5HINT;Nur mit 5 Sternen bewertete Bilder anzeigen <b>5</b>
FILEBROWSER_SHOWRECENTLYSAVEDHINT;Nur kürzlich gespeicherte Bilder anzeigen <b>Alt+7</b>
FILEBROWSER_SHOWRECENTLYSAVEDNOTHINT;Nur nicht kürzlich gespeicherte Bilder anzeigen <b>Alt+6</b>
FILEBROWSER_SHOWTRASHHINT;Inhalt des Papierkorbs anzeigen <b>T</b>
FILEBROWSER_SHOWTRASHHINT;Inhalt des Papierkorbs anzeigen <b>Strg-t</b>
FILEBROWSER_SHOWUNCOLORHINT;Nur unmarkierte Bilder anzeigen <b>Alt+0</b>
FILEBROWSER_SHOWUNRANKHINT;Nur unbewertete Bilder anzeigen <b>0</b>
FILEBROWSER_STARTPROCESSINGHINT;Verarbeitung/Speichern der Bilder in der Warteschlange starten

View File

@@ -288,7 +288,7 @@ TP_WBALANCE_EQBLUERED_TOOLTIP;Allows to deviate from the normal behaviour of "wh
!FILEBROWSER_SHOWRANK5HINT;Show images ranked as 5-star.\nShortcut: <b>5</b>
!FILEBROWSER_SHOWRECENTLYSAVEDHINT;Show saved images.\nShortcut: <b>Alt-7</b>
!FILEBROWSER_SHOWRECENTLYSAVEDNOTHINT;Show unsaved images.\nShortcut: <b>Alt-6</b>
!FILEBROWSER_SHOWTRASHHINT;Show contents of trash.\nShortcut: <b>t</b>
!FILEBROWSER_SHOWTRASHHINT;Show contents of trash.\nShortcut: <b>Ctrl-t</b>
!FILEBROWSER_SHOWUNRANKHINT;Show unranked images.\nShortcut: <b>0</b>
!FILEBROWSER_STARTPROCESSINGHINT;Start processing the images in the queue.
!FILEBROWSER_STARTPROCESSING;Start processing

View File

@@ -172,7 +172,7 @@
!FILEBROWSER_SHOWRANK5HINT;Show images ranked as 5-star.\nShortcut: <b>5</b>
!FILEBROWSER_SHOWRECENTLYSAVEDHINT;Show saved images.\nShortcut: <b>Alt-7</b>
!FILEBROWSER_SHOWRECENTLYSAVEDNOTHINT;Show unsaved images.\nShortcut: <b>Alt-6</b>
!FILEBROWSER_SHOWTRASHHINT;Show contents of trash.\nShortcut: <b>t</b>
!FILEBROWSER_SHOWTRASHHINT;Show contents of trash.\nShortcut: <b>Ctrl-t</b>
!FILEBROWSER_SHOWUNCOLORHINT;Show images without a color label.\nShortcut: <b>Alt-0</b>
!FILEBROWSER_SHOWUNRANKHINT;Show unranked images.\nShortcut: <b>0</b>
!FILEBROWSER_STARTPROCESSINGHINT;Start processing the images in the queue.

View File

@@ -230,7 +230,7 @@ FILEBROWSER_SHOWRANK4HINT;Mostrar imágenes con 4 estrellas.\nAtajo: <b>4</b>
FILEBROWSER_SHOWRANK5HINT;Mostrar imágenes con 5 estrellas.\nAtajo: <b>5</b>
FILEBROWSER_SHOWRECENTLYSAVEDHINT;Mostrar imágenes guardadas recientemente.\nAtajo: <b>Alt-7</b>
FILEBROWSER_SHOWRECENTLYSAVEDNOTHINT;Mostrar imágenes no guardadas recientemente.\nAtajo: <b>Alt-6</b>
FILEBROWSER_SHOWTRASHHINT;Mostrar el contenido de la papelera.\nAtajo: <b>t</b>
FILEBROWSER_SHOWTRASHHINT;Mostrar el contenido de la papelera.\nAtajo: <b>Ctrl-t</b>
FILEBROWSER_SHOWUNCOLORHINT;Mostrar imágenes sin etiqueta de color.\nAtajo: <b>Alt-0</b>
FILEBROWSER_SHOWUNRANKHINT;Mostrar imágenes sin rango.\nAtajo: <b>0</b>
FILEBROWSER_STARTPROCESSINGHINT;Iniciar el procesamiento de imágenes en la cola

View File

@@ -170,7 +170,7 @@ FILEBROWSER_SHOWRANK4HINT;Voir les images 4 étoiles\nRaccourci: <b>4</b>
FILEBROWSER_SHOWRANK5HINT;Voir les images 5 étoiles\nRaccourci: <b>5</b>
FILEBROWSER_SHOWRECENTLYSAVEDHINT;Afficher les images sauvegardées récemment\nRaccourci: <b>Alt-7</b>
FILEBROWSER_SHOWRECENTLYSAVEDNOTHINT; Afficher les images non sauvegardées récemment\nRaccourci: <b>Alt-6</b>
FILEBROWSER_SHOWTRASHHINT;Voir le contenu de la corbeille\nRaccourci: <b>t</b>
FILEBROWSER_SHOWTRASHHINT;Voir le contenu de la corbeille\nRaccourci: <b>Ctrl-t</b>
FILEBROWSER_SHOWUNCOLORHINT;Afficher les images sans label de couleur\nRaccourci: <b>Alt-0</b>
FILEBROWSER_SHOWUNRANKHINT;Voir les images sans étoile\nRaccourci: <b>0</b>
FILEBROWSER_STARTPROCESSINGHINT;Démarre le traitement/sauvegarde des images dans la file
@@ -775,6 +775,8 @@ PREFERENCES_FLUOF7;Fluorescent F7
PREFERENCES_FLUOF11;Fluorescent F11
PREFERENCES_FORIMAGE;Pour les fichiers images
PREFERENCES_FORRAW;Pour les fichiers RAW
PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Taille de vignette identique entre l'Éditeur et le Navigateur de Fichier
PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Avoir une hauteur différente demandera plus de temp de traitement à chaque fois que vous baculerez entre l'Éditeur unique et le Navigateur de Fichier.
PREFERENCES_GIMPPATH;Dossier d'intallation de GIMP
PREFERENCES_GREY05;Yb=05 CIE L#30
PREFERENCES_GREY10;Yb=10 CIE L#40
@@ -809,7 +811,8 @@ PREFERENCES_OUTDIRFOLDER;Dossier de sauvegarde
PREFERENCES_OUTDIRTEMPLATEHINT;Vous pouvez utiliser les paramètres de chaîne formatées suivants:\n<b>%f</b>, <b>%d1</b>, <b>%d2</b>, ..., <b>%p1</b>, <b>%p2</b>, ..., <b>%r</b>, <b>%s1</b>, <b>%s2</b>, ...\n\nCes chaînes de formattage se réfèrent aux différentes parties du chemin de la photo, certains de ses attributs ou un numéro de séquence arbitraire dans le traitement par lot.\n\nPar exemple, si la photo en cours de traitement a le chemin suivant:\n<b><i>/home/tom/image/02-09-2006/dsc0012.nef</i></b>\nla signification des chaînes de formattage est:\n<b>%d4</b> = <i>home</i>\n<b>%d3</b> = <i>tom</i>\n<b>%d2</b> = <i>photos</i>\n<b>%d1</b> = <i>2010-10-31</i>\n<b>%f</b> = <i>dsc0042</i>\n<b>%p1</b> = <i>/home/tom/photos/2010-10-31/</i>\n<b>%p2</b> = <i>/home/tom/photos/</i>\n<b>%p3</b> = <i>/home/tom/</i>\n<b>%p4</b> = <i>/home/</i>\n\n<b>%r</b> sera remplacé par le rang de la photo. Si la photo n'a pas de rang, %r sera remplacé par '0'. Si la photo est dans la corbeille de RawTherapee, %r sera remplacé par 'x'.\n\n<b>%s1</b>, <b>%s2</b>, etc. sera remplacé par un index de séquence constitué de 1 à 9 chiffre. L'index de la séquence commencera à 1 à chaque fois que le file de traitement est démarrée, et est incrémenté de 1 pour chaque image traitée.\n\nSi vous voulez enregistrer l'image de sortie là où se trouve l'originale, écrivez:\n<b>%p1/%f</b>\n\nSi vous voulez enregistrer l'image de sortie dans un dossier nommé "<i>convertis</i>" situé dans le dossier de l'originale, écrivez:\n<b>%p1/convertis/%f</b>\n\nSi vous voulez enregistrer l'image de sortie dans un dossier nommé "<i>/home/tom/photos/convertis/2010-10-31</i>", écrivez:\n<b>%p2/convertis/%d1/%f</b>
PREFERENCES_OUTDIRTEMPLATE;Utiliser le modèle
PREFERENCES_OUTDIR;Dossier de sortie
PREFERENCES_OVERLAY_FILENAMES;Superposer les noms de fichier sur les vignettes
PREFERENCES_OVERLAY_FILENAMES;Superposer les noms de fichier sur les vignettes dans le navigateur de fichier
PREFERENCES_OVERLAY_FILENAMES_FILMSTRIP;Superposer les noms de fichier sur les vignettes dans le panneau d'édition
PREFERENCES_OVERWRITEOUTPUTFILE;Écraser le fichier s'il existe déjà
PREFERENCES_PANFACTORFRAME;Amplification du déplacement
PREFERENCES_PANFACTORLABEL;Facteur

View File

@@ -174,7 +174,7 @@ FILEBROWSER_SHOWRANK4HINT;Mostra le immagini classificate con 4 stelle.\nScorcia
FILEBROWSER_SHOWRANK5HINT;Mostra le immagini classificate con 5 stelle.\nScorciatoia: <b>5</b>
FILEBROWSER_SHOWRECENTLYSAVEDHINT;Mostra le immagini salvate.\nScorciatoia: <b>Alt-7</b>
FILEBROWSER_SHOWRECENTLYSAVEDNOTHINT;Mostra le immagini non salvate.\nScorciatoia: <b>Alt-6</b>
FILEBROWSER_SHOWTRASHHINT;Mostra il contenuto del cestino.\nScorciatoia: <b>t</b>
FILEBROWSER_SHOWTRASHHINT;Mostra il contenuto del cestino.\nScorciatoia: <b>Ctrl-t</b>
FILEBROWSER_SHOWUNCOLORHINT;Mostra le immagini senza etichetta colorata.\nScorciatoia: <b>Alt-0</b>
FILEBROWSER_SHOWUNRANKHINT;Mostra le immagini non classificate.\nScorciatoia: <b>0</b>
FILEBROWSER_STARTPROCESSINGHINT;Inizia a sviluppare le immagini nella Coda.

View File

@@ -191,7 +191,7 @@ FILEBROWSER_SHOWRANK4HINT;4つ星ランクを表示\nショートカット: <b
FILEBROWSER_SHOWRANK5HINT;5つ星ランクを表示\nショートカット: <b>5</b>
FILEBROWSER_SHOWRECENTLYSAVEDHINT;最近保存された画像を表示\nショートカット: <b>Alt-7</b>
FILEBROWSER_SHOWRECENTLYSAVEDNOTHINT;最近保存されていない画像を表示\nショートカット: <b>Alt-6</b>
FILEBROWSER_SHOWTRASHHINT;ゴミ箱の内容を表示\nショートカット: <b>T</b>
FILEBROWSER_SHOWTRASHHINT;ゴミ箱の内容を表示\nショートカット: <b>Ctrl-t</b>
FILEBROWSER_SHOWUNCOLORHINT;カラー・ラベルのない画像を表示\nショートカット: <b>Alt-0</b>
FILEBROWSER_SHOWUNRANKHINT;ランクなし画像を表示\nショートカット: <b>0</b>
FILEBROWSER_STARTPROCESSINGHINT;処理開始/キュー画像の保存

View File

@@ -178,7 +178,7 @@ FILEBROWSER_SHOWRANK4HINT;Pokazuje zdjęcia ocenione na 4 gwiazdki.\nSkrót: <b>
FILEBROWSER_SHOWRANK5HINT;Pokazuje zdjęcia ocenione na 5 gwiazdek.\nSkrót: <b>5</b>
FILEBROWSER_SHOWRECENTLYSAVEDHINT;Pokazuje zapisane zdjęcia.\nSkrót: <b>Alt-7</b>
FILEBROWSER_SHOWRECENTLYSAVEDNOTHINT;Pokazuje niezapisane zdjęcia.\nSkrót: <b>Alt-6</b>
FILEBROWSER_SHOWTRASHHINT;Pokazuje zawartość kosza.\nSkrót: <b>t</b>
FILEBROWSER_SHOWTRASHHINT;Pokazuje zawartość kosza.\nSkrót: <b>Ctrl-t</b>
FILEBROWSER_SHOWUNCOLORHINT;Pokazuje zdjęcia bez kolorowej etykiety.\nSkrót: <b>Alt-0</b>
FILEBROWSER_SHOWUNRANKHINT;Pokazuje nieocenione zdjęcia.\nSkrót: <b>0</b>
FILEBROWSER_STARTPROCESSINGHINT;Rozpoczyna przetwarzanie/zapisywanie plików z kolejki.

View File

@@ -178,7 +178,7 @@ FILEBROWSER_SHOWRANK4HINT;Pokazuje zdjecia ocenione na 4 gwiazdki.\nSkrot: <b>4<
FILEBROWSER_SHOWRANK5HINT;Pokazuje zdjecia ocenione na 5 gwiazdek.\nSkrot: <b>5</b>
FILEBROWSER_SHOWRECENTLYSAVEDHINT;Pokazuje zapisane zdjecia.\nSkrot: <b>Alt-7</b>
FILEBROWSER_SHOWRECENTLYSAVEDNOTHINT;Pokazuje niezapisane zdjecia.\nSkrot: <b>Alt-6</b>
FILEBROWSER_SHOWTRASHHINT;Pokazuje zawartosc kosza.\nSkrot: <b>t</b>
FILEBROWSER_SHOWTRASHHINT;Pokazuje zawartosc kosza.\nSkrot: <b>Ctrl-t</b>
FILEBROWSER_SHOWUNCOLORHINT;Pokazuje zdjecia bez kolorowej etykiety.\nSkrot: <b>Alt-0</b>
FILEBROWSER_SHOWUNRANKHINT;Pokazuje nieocenione zdjecia.\nSkrot: <b>0</b>
FILEBROWSER_STARTPROCESSINGHINT;Rozpoczyna przetwarzanie/zapisywanie plikow z kolejki.

View File

@@ -173,7 +173,7 @@ FILEBROWSER_SHOWRANK4HINT;Показать изображения с рейти
FILEBROWSER_SHOWRANK5HINT;Показать изображения с рейтингом 5.\nГорячая клавиша: <b>5</b>
FILEBROWSER_SHOWRECENTLYSAVEDHINT;Показать изображения, сохранённые недавно.\nГорячая клавиша: <b>Alt-7</b>
FILEBROWSER_SHOWRECENTLYSAVEDNOTHINT;Показать изображения, сохранённые давно.\nГорячая клавиша: <b>Alt-6</b>
FILEBROWSER_SHOWTRASHHINT;Показать содержимое корзины.\nГорячая клавиша: <b>T</b>
FILEBROWSER_SHOWTRASHHINT;Показать содержимое корзины.\nГорячая клавиша: <b>Ctrl-t</b>
FILEBROWSER_SHOWUNCOLORHINT;Показать изображения без цветовой метки.\nГорячая клавиша: <b>Alt-0</b>
FILEBROWSER_SHOWUNRANKHINT;Показать изображения без рейтинга\nГорячая клавиша: <b>0</b>
FILEBROWSER_STARTPROCESSINGHINT;Запуск обработки помещенных в очередь изображений

View File

@@ -172,7 +172,7 @@ FILEBROWSER_SHOWRANK4HINT;Show images ranked as 4-star.\nShortcut: <b>4</b>
FILEBROWSER_SHOWRANK5HINT;Show images ranked as 5-star.\nShortcut: <b>5</b>
FILEBROWSER_SHOWRECENTLYSAVEDHINT;Show saved images.\nShortcut: <b>Alt-7</b>
FILEBROWSER_SHOWRECENTLYSAVEDNOTHINT;Show unsaved images.\nShortcut: <b>Alt-6</b>
FILEBROWSER_SHOWTRASHHINT;Show contents of trash.\nShortcut: <b>t</b>
FILEBROWSER_SHOWTRASHHINT;Show contents of trash.\nShortcut: <b>Ctrl-t</b>
FILEBROWSER_SHOWUNCOLORHINT;Show images without a color label.\nShortcut: <b>Alt-0</b>
FILEBROWSER_SHOWUNRANKHINT;Show unranked images.\nShortcut: <b>0</b>
FILEBROWSER_STARTPROCESSINGHINT;Start processing the images in the queue.
@@ -772,6 +772,8 @@ PREFERENCES_FLUOF7;Fluorescent F7
PREFERENCES_FLUOF11;Fluorescent F11
PREFERENCES_FORIMAGE;For non-raw photos
PREFERENCES_FORRAW;For raw photos
PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT;Same thumbnail height between the Editor's panel and the File Browser
PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT;Having separate thumbnail size will require more processing time each time you'll switch between the single Editor tab and the File Browser.
PREFERENCES_GIMPPATH;GIMP installation directory
PREFERENCES_GREY05;Yb=05 CIE L#30
PREFERENCES_GREY10;Yb=10 CIE L#40
@@ -809,7 +811,8 @@ PREFERENCES_OUTDIRFOLDER;Save to folder
PREFERENCES_OUTDIRTEMPLATEHINT;You can use the following formatting strings:\n<b>%f</b>, <b>%d1</b>, <b>%d2</b>, ..., <b>%p1</b>, <b>%p2</b>, ..., <b>%r</b>, <b>%s1</b>, <b>%s2</b>, ...\n\nThese formatting strings refer to the different parts of the photo's pathname, some attributes of the photo or an arbitrary sequence index in the batch job.\n\nFor example, if the photo being processed has the following pathname:\n<b><i>/home/tom/photos/2010-10-31/dsc0042.nef</i></b>\nthe meaning of the formatting strings are:\n<b>%d4</b> = <i>home</i>\n<b>%d3</b> = <i>tom</i>\n<b>%d2</b> = <i>photos</i>\n<b>%d1</b> = <i>2010-10-31</i>\n<b>%f</b> = <i>dsc0042</i>\n<b>%p1</b> = <i>/home/tom/photos/2010-10-31/</i>\n<b>%p2</b> = <i>/home/tom/photos/</i>\n<b>%p3</b> = <i>/home/tom/</i>\n<b>%p4</b> = <i>/home/</i>\n\n<b>%r</b> will be replaced by the rank of the photo. If the photo is unranked, %r will be replaced by '0'. If the photo is in the trash bin, %r will be replaced by 'x'.\n\n<b>%s1</b>, <b>%s2</b>, etc. will be replaced by a sequence index which is padded to between 1 and 9 digits. The sequence index will start at one each time the queue processing is started and is incremented by one for each image processed.\n\nIf you want to save the output image where the original is, write:\n<b>%p1/%f</b>\n\nIf you want to save the output image in a directory named "<i>converted</i>" located in the directory of the opened image, write:\n<b>%p1/converted/%f</b>\n\nIf you want to save the output image in a directory named "<i>/home/tom/photos/converted/2010-10-31</i>", write:\n<b>%p2/converted/%d1/%f</b>
PREFERENCES_OUTDIRTEMPLATE;Use template
PREFERENCES_OUTDIR;Output Directory
PREFERENCES_OVERLAY_FILENAMES;Overlay filenames on thumbnails
PREFERENCES_OVERLAY_FILENAMES;Overlay filenames on thumbnails in the file browser
PREFERENCES_OVERLAY_FILENAMES_FILMSTRIP;Overlay filenames on thumbnails in the editor pannel
PREFERENCES_OVERWRITEOUTPUTFILE;Overwrite existing output files
PREFERENCES_PANFACTORFRAME;Pan Rate Amplification
PREFERENCES_PANFACTORLABEL;Factor

View File

@@ -38,6 +38,8 @@ using namespace rtengine;
BatchQueue::BatchQueue () : processing(NULL), sequence(0), listener(NULL) {
location = THLOC_BATCHQUEUE;
int p = 0;
pmenu = new Gtk::Menu ();
pmenu->attach (*Gtk::manage(selall = new Gtk::MenuItem (M("FILEBROWSER_POPUPSELECTALL"))), 0, 1, p, p+1); p++;

View File

@@ -417,6 +417,11 @@ void EditorPanel::writeOptions() {
tpc->writeOptions();
}
void EditorPanel::showTopPanel(bool show) {
if (tbTopPanel_1->get_active() != show)
tbTopPanel_1->set_active(show);
}
void EditorPanel::setAspect () {
int winW, winH;
parent->get_size(winW, winH);
@@ -837,10 +842,12 @@ void EditorPanel::tbTopPanel_1_toggled () {
if (tbTopPanel_1->get_active()){
catalogPane->show();
tbTopPanel_1->set_image (*iTopPanel_1_Hide);
options.editorFilmStripOpened = true;
}
else {
catalogPane->hide();
tbTopPanel_1->set_image (*iTopPanel_1_Show);
options.editorFilmStripOpened = false;
}
tbShowHideSidePanels_managestate();

View File

@@ -146,6 +146,8 @@ class EditorPanel : public Gtk::VBox,
void setParent (RTWindow* p) { parent = p; }
void writeOptions();
void showTopPanel(bool show);
// progresslistener interface
void setProgress (double p);
void setProgressStr (Glib::ustring str);

View File

@@ -1081,7 +1081,7 @@ bool FileBrowser::keyPressed (GdkEventKey* event) {
}
void FileBrowser::saveThumbnailHeight (int height) {
if (!options.sameThumbSize && inTabMode)
if (!options.sameThumbSize && getLocation()==THLOC_EDITOR)
options.thumbSizeTab = height;
else
options.thumbSize = height;
@@ -1089,7 +1089,7 @@ void FileBrowser::saveThumbnailHeight (int height) {
int FileBrowser::getThumbnailHeight () {
// The user could have manually forced the option to a too big value
if (!options.sameThumbSize && inTabMode)
if (!options.sameThumbSize && getLocation()==THLOC_EDITOR)
return std::max(std::min(options.thumbSizeTab, 800), 10);
else
return std::max(std::min(options.thumbSize, 800), 10);

View File

@@ -418,6 +418,9 @@ bool FileCatalog::capture_event(GdkEventButton* event){
void FileCatalog::exifInfoButtonToggled()
{
if (inTabMode)
options.filmStripShowFileNames = exifInfo->get_active();
else
options.showFileNames = exifInfo->get_active();
fileBrowser->refreshThumbImages ();
}
@@ -527,6 +530,19 @@ void FileCatalog::dirSelected (const Glib::ustring& dirname, const Glib::ustring
void FileCatalog::enableTabMode(bool enable) {
inTabMode = enable;
if (enable) {
if (options.showFilmStripToolBar)
showToolBar();
else
hideToolBar();
exifInfo->set_active( options.filmStripShowFileNames );
}
else {
buttonBar->show();
hbToolBar1->show();
exifInfo->set_active( options.showFileNames );
}
fileBrowser->enableTabMode(inTabMode);
redrawAll();
@@ -691,10 +707,16 @@ void FileCatalog::refreshThumbImages () {
}
void FileCatalog::refreshHeight () {
int newHeight=fileBrowser->getEffectiveHeight() + buttonBar->get_height();
if (!options.FileBrowserToolbarSingleRow) {
newHeight += hbToolBar1->get_height();
int newHeight = fileBrowser->getEffectiveHeight();
if (newHeight < 5) { // This may occure if there's no thumbnail.
int w, h;
get_size_request(w, h);
newHeight = h;
}
if (hbToolBar1->is_visible() && !options.FileBrowserToolbarSingleRow)
newHeight += hbToolBar1->get_height();
if (buttonBar->is_visible())
newHeight += buttonBar->get_height();
set_size_request(0, newHeight+2); // HOMBRE: yeah, +2, there's always 2 pixels missing... sorry for this dirty hack O:)
}
@@ -1942,10 +1964,6 @@ bool FileCatalog::handleShortcutKey (GdkEventKey* event) {
case GDK_D:
categoryButtonToggled(bFilterClear,false);
return true;
case GDK_t:
case GDK_T:
categoryButtonToggled(bTrash,false);
return true;
}
}
@@ -1983,6 +2001,40 @@ bool FileCatalog::handleShortcutKey (GdkEventKey* event) {
Query->select_region(0, Query->get_text_length());
Query->grab_focus();
return true;
case GDK_t:
case GDK_T:
modifierKey = 0; // HOMBRE: yet another hack.... otherwise the shortcut won't work
categoryButtonToggled(bTrash,false);
return true;
}
}
if (!ctrl && !alt && shift) {
switch (event->keyval) {
case GDK_t:
case GDK_T:
if (inTabMode) {
if (options.showFilmStripToolBar)
hideToolBar();
else
showToolBar();
options.showFilmStripToolBar = !options.showFilmStripToolBar;
}
return true;
}
}
if (!ctrl && !alt && !shift) {
switch (event->keyval) {
case GDK_t:
case GDK_T:
if (inTabMode) {
if (options.showFilmStripToolBar)
hideToolBar();
else
showToolBar();
options.showFilmStripToolBar = !options.showFilmStripToolBar;
}
refreshHeight();
return true;
}
}
@@ -1991,3 +2043,15 @@ bool FileCatalog::handleShortcutKey (GdkEventKey* event) {
return false;
}
void FileCatalog::showToolBar() {
if (!options.FileBrowserToolbarSingleRow)
hbToolBar1->show();
buttonBar->show();
}
void FileCatalog::hideToolBar() {
if (!options.FileBrowserToolbarSingleRow)
hbToolBar1->hide();
buttonBar->hide();
}

View File

@@ -250,6 +250,9 @@ class FileCatalog : public Gtk::VBox,
void toggleLeftPanel();
void toggleRightPanel();
void showToolBar();
void hideToolBar();
#ifndef _WIN32
void on_dir_changed (const Glib::RefPtr<Gio::File>& file, const Glib::RefPtr<Gio::File>& other_file, Gio::FileMonitorEvent event_type, bool internal);
#else

View File

@@ -274,6 +274,7 @@ void Options::setDefaults () {
browserToolPanelHeight = 600;
browserToolPanelOpened = true;;
browserDirPanelOpened = true;
editorFilmStripOpened = true;
historyPanelWidth = 330;
lastScale = 5;
panAccelFactor = 5;
@@ -291,7 +292,7 @@ void Options::setDefaults () {
thumbSize = 240;
thumbSizeTab = 180;
thumbSizeQueue = 160;
sameThumbSize = false; // preferring speed of switch between file browser and single editor tab
sameThumbSize = true; // preferring speed of switch between file browser and single editor tab
showHistory = true;
showFilePanelState = 0; // Not used anymore ; was the thumb strip state
showInfo = true;
@@ -340,8 +341,10 @@ void Options::setDefaults () {
thumbnailZoomRatios.push_back (0.8);
thumbnailZoomRatios.push_back (1.0);
overlayedFileNames = false;
filmStripOverlayedFileNames = false;
internalThumbIfUntouched = true; // if TRUE, only fast, internal preview images are taken if the image is not edited yet
showFileNames = true;
filmStripShowFileNames = false;
tabbedUI = false;
mainNBVertical = true;
multiDisplayMode = 0;
@@ -359,6 +362,7 @@ void Options::setDefaults () {
hideTPVScrollbar = false;
UseIconNoText = true;
whiteBalanceSpotSize = 8;
showFilmStripToolBar = false;
menuGroupRank = true;
menuGroupLabel = true;
menuGroupFileOperations = true;
@@ -692,7 +696,9 @@ if (keyFile.has_group ("File Browser")) {
if (keyFile.has_key ("File Browser", "RenameUseTemplates")) renameUseTemplates = keyFile.get_boolean ("File Browser", "RenameUseTemplates");
if (keyFile.has_key ("File Browser", "ThumbnailZoomRatios"))thumbnailZoomRatios= keyFile.get_double_list ("File Browser", "ThumbnailZoomRatios");
if (keyFile.has_key ("File Browser", "OverlayedFileNames")) overlayedFileNames = keyFile.get_boolean ("File Browser", "OverlayedFileNames");
if (keyFile.has_key ("File Browser", "FilmStripOverlayedFileNames")) filmStripOverlayedFileNames = keyFile.get_boolean ("File Browser", "FilmStripOverlayedFileNames");
if (keyFile.has_key ("File Browser", "ShowFileNames")) showFileNames = keyFile.get_boolean ("File Browser", "ShowFileNames");
if (keyFile.has_key ("File Browser", "FilmStripShowFileNames")) filmStripShowFileNames = keyFile.get_boolean ("File Browser", "FilmStripShowFileNames");
if (keyFile.has_key ("File Browser", "InternalThumbIfUntouched")) internalThumbIfUntouched = keyFile.get_boolean ("File Browser", "InternalThumbIfUntouched");
if (keyFile.has_key ("File Browser", "menuGroupRank")) menuGroupRank = keyFile.get_boolean ("File Browser", "menuGroupRank");
if (keyFile.has_key ("File Browser", "menuGroupLabel")) menuGroupLabel = keyFile.get_boolean ("File Browser", "menuGroupLabel");
@@ -731,6 +737,7 @@ if (keyFile.has_group ("GUI")) {
if (keyFile.has_key ("GUI", "BrowserToolPanelHeight")) browserToolPanelHeight = keyFile.get_integer ("GUI", "BrowserToolPanelHeight");
if (keyFile.has_key ("GUI", "BrowserToolPanelOpened")) browserToolPanelOpened = keyFile.get_boolean ("GUI", "BrowserToolPanelOpened");
if (keyFile.has_key ("GUI", "BrowserDirPanelOpened")) browserDirPanelOpened = keyFile.get_boolean ("GUI", "BrowserDirPanelOpened");
if (keyFile.has_key ("GUI", "EditorFilmStripOpened")) editorFilmStripOpened = keyFile.get_boolean ("GUI", "EditorFilmStripOpened");
if (keyFile.has_key ("GUI", "HistoryPanelWidth")) historyPanelWidth = keyFile.get_integer ("GUI", "HistoryPanelWidth");
if (keyFile.has_key ("GUI", "LastPreviewScale")) lastScale = keyFile.get_integer ("GUI", "LastPreviewScale");
if (keyFile.has_key ("GUI", "PanAccelFactor")) panAccelFactor = keyFile.get_integer ("GUI", "PanAccelFactor");
@@ -751,6 +758,7 @@ if (keyFile.has_group ("GUI")) {
if (keyFile.has_key ("GUI", "HistogramPosition")) histogramPosition = keyFile.get_integer ("GUI", "HistogramPosition");
if (keyFile.has_key ("GUI", "HistogramBar")) histogramBar = keyFile.get_boolean ("GUI", "HistogramBar");
if (keyFile.has_key ("GUI", "HistogramFullMode")) histogramFullMode = keyFile.get_boolean ("GUI", "HistogramFullMode");
if (keyFile.has_key ("GUI", "ShowFilmStripToolBar")) showFilmStripToolBar = keyFile.get_boolean ("GUI", "ShowFilmStripToolBar");
if (keyFile.has_key ("GUI", "ShowProfileSelector")) showProfileSelector = keyFile.get_boolean ("GUI", "ShowProfileSelector");
if (keyFile.has_key ("GUI", "FileBrowserToolbarSingleRow")) FileBrowserToolbarSingleRow = keyFile.get_boolean ("GUI", "FileBrowserToolbarSingleRow");
if (keyFile.has_key ("GUI", "HideTPVScrollbar")) hideTPVScrollbar = keyFile.get_boolean ("GUI", "HideTPVScrollbar");
@@ -963,7 +971,9 @@ int Options::saveToFile (Glib::ustring fname) {
Glib::ArrayHandle<double> ptzoom = thumbnailZoomRatios;
keyFile.set_double_list ("File Browser", "ThumbnailZoomRatios", ptzoom);
keyFile.set_boolean ("File Browser", "OverlayedFileNames", overlayedFileNames);
keyFile.set_boolean ("File Browser", "FilmStripOverlayedFileNames", filmStripOverlayedFileNames);
keyFile.set_boolean ("File Browser", "ShowFileNames", showFileNames );
keyFile.set_boolean ("File Browser", "FilmStripShowFileNames", filmStripShowFileNames );
keyFile.set_boolean ("File Browser", "InternalThumbIfUntouched", internalThumbIfUntouched );
keyFile.set_boolean ("File Browser", "menuGroupRank", menuGroupRank);
keyFile.set_boolean ("File Browser", "menuGroupLabel", menuGroupLabel);
@@ -1035,6 +1045,7 @@ int Options::saveToFile (Glib::ustring fname) {
keyFile.set_integer ("GUI", "BrowserToolPanelWidth", browserToolPanelWidth);
keyFile.set_integer ("GUI", "BrowserToolPanelHeight", browserToolPanelHeight);
keyFile.set_boolean ("GUI", "BrowserToolPanelOpened", browserToolPanelOpened);
keyFile.set_boolean ("GUI", "EditorFilmStripOpened", editorFilmStripOpened);
keyFile.set_boolean ("GUI", "BrowserDirPanelOpened", browserDirPanelOpened);
keyFile.set_integer ("GUI", "HistoryPanelWidth", historyPanelWidth);
keyFile.set_integer ("GUI", "LastPreviewScale", lastScale);
@@ -1056,6 +1067,7 @@ int Options::saveToFile (Glib::ustring fname) {
keyFile.set_integer ("GUI", "HistogramPosition", histogramPosition);
keyFile.set_boolean ("GUI", "HistogramBar", histogramBar);
keyFile.set_boolean ("GUI", "HistogramFullMode", histogramFullMode);
keyFile.set_boolean ("GUI", "ShowFilmStripToolBar", showFilmStripToolBar);
keyFile.set_boolean ("GUI", "ShowProfileSelector", showProfileSelector);
keyFile.set_boolean ("GUI", "FileBrowserToolbarSingleRow", FileBrowserToolbarSingleRow);
keyFile.set_boolean ("GUI", "HideTPVScrollbar", hideTPVScrollbar);

View File

@@ -109,6 +109,7 @@ class Options {
int browserToolPanelHeight;
bool browserToolPanelOpened;
bool browserDirPanelOpened;
bool editorFilmStripOpened;
int historyPanelWidth;
Glib::ustring font;
int windowWidth;
@@ -187,7 +188,9 @@ class Options {
std::vector<double> thumbnailZoomRatios;
bool overlayedFileNames;
bool filmStripOverlayedFileNames;
bool showFileNames;
bool filmStripShowFileNames;
bool tabbedUI;
int previewSizeTab,previewSizeBrowser;
int multiDisplayMode; // 0=none, 1=Edit panels on other display
@@ -210,6 +213,8 @@ class Options {
bool UseIconNoText;
int whiteBalanceSpotSize;
bool showFilmStripToolBar;
Glib::ustring clutsDir;
// Performance options

View File

@@ -932,6 +932,9 @@ Gtk::Widget* Preferences::getFileBrowserPanel () {
Gtk::HBox* hbro1 = Gtk::manage( new Gtk::HBox () );
Gtk::HBox* hbro0 = Gtk::manage( new Gtk::HBox () );
overlayedFileNames = Gtk::manage( new Gtk::CheckButton (M("PREFERENCES_OVERLAY_FILENAMES")) );
filmStripOverlayedFileNames = Gtk::manage( new Gtk::CheckButton (M("PREFERENCES_OVERLAY_FILENAMES_FILMSTRIP")) );
sameThumbSize = Gtk::manage( new Gtk::CheckButton (M("PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT")) );
sameThumbSize->set_tooltip_text(M("PREFERENCES_FSTRIP_SAME_THUMB_HEIGHT_HINT"));
ckbInternalThumbIfUntouched = Gtk::manage( new Gtk::CheckButton (M("PREFERENCES_INTERNALTHUMBIFUNTOUCHED")));
vbro->set_border_width (4);
@@ -948,6 +951,8 @@ Gtk::Widget* Preferences::getFileBrowserPanel () {
hbro1->pack_start (*showExpComp, Gtk::PACK_SHRINK, 4);
vbro->pack_start (*hbro1, Gtk::PACK_SHRINK, 0);
vbro->pack_start (*overlayedFileNames, Gtk::PACK_SHRINK, 0);
vbro->pack_start (*filmStripOverlayedFileNames, Gtk::PACK_SHRINK, 0);
vbro->pack_start (*sameThumbSize, Gtk::PACK_SHRINK, 0);
vbro->pack_start (*ckbInternalThumbIfUntouched, Gtk::PACK_SHRINK, 0);
fro->add (*vbro);
@@ -1236,6 +1241,8 @@ void Preferences::storePreferences () {
moptions.maxThumbnailHeight = (int)maxThumbSize->get_value ();
moptions.maxCacheEntries = (int)maxCacheEntries->get_value ();
moptions.overlayedFileNames = overlayedFileNames->get_active ();
moptions.filmStripOverlayedFileNames = filmStripOverlayedFileNames->get_active();
moptions.sameThumbSize = sameThumbSize->get_active();
moptions.internalThumbIfUntouched = ckbInternalThumbIfUntouched->get_active ();
moptions.saveParamsFile = saveParamsFile->get_active ();
@@ -1381,6 +1388,8 @@ void Preferences::fillPreferences () {
maxThumbSize->set_value (moptions.maxThumbnailHeight);
maxCacheEntries->set_value (moptions.maxCacheEntries);
overlayedFileNames->set_active (moptions.overlayedFileNames);
filmStripOverlayedFileNames->set_active(moptions.filmStripOverlayedFileNames);
sameThumbSize->set_active(moptions.sameThumbSize);
ckbInternalThumbIfUntouched->set_active(moptions.internalThumbIfUntouched);
saveParamsFile->set_active (moptions.saveParamsFile);

View File

@@ -113,6 +113,8 @@ class Preferences : public Gtk::Dialog, public ProfileStoreListener {
Gtk::Button* addExt;
Gtk::Button* delExt;
Gtk::CheckButton* overlayedFileNames;
Gtk::CheckButton* filmStripOverlayedFileNames;
Gtk::CheckButton* sameThumbSize;
Gtk::SpinButton* rgbDenoiseTreadLimitSB;

View File

@@ -704,6 +704,7 @@ void RTWindow::MoveFileBrowserToEditor()
FileCatalog *fCatalog = fpanel->fileCatalog;
fpanel->ribbonPane->remove(*fCatalog);
epanel->catalogPane->add(*fCatalog);
epanel->showTopPanel(options.editorFilmStripOpened);
fCatalog->enableTabMode(true);
fCatalog->refreshHeight();
fCatalog->tbLeftPanel_1_visible(false);

View File

@@ -26,7 +26,7 @@ using namespace std;
ThumbBrowserBase::ThumbBrowserBase ()
: lastClicked(NULL), previewHeight(options.thumbSize), numOfCols(1) {
inTabMode=false; // corresponding to take thumbSize
location = THLOC_FILEBROWSER;
inW = -1; inH = -1;
Gtk::HBox* hb1 = Gtk::manage( new Gtk::HBox () );
@@ -930,10 +930,10 @@ void ThumbBrowserBase::setArrangement (Arrangement a) {
}
void ThumbBrowserBase::enableTabMode(bool enable) {
inTabMode = enable;
arrangement = inTabMode ? ThumbBrowserBase::TB_Horizontal : ThumbBrowserBase::TB_Vertical;
location = enable ? THLOC_EDITOR : THLOC_FILEBROWSER;
arrangement = enable ? ThumbBrowserBase::TB_Horizontal : ThumbBrowserBase::TB_Vertical;
if (!options.sameThumbSize && (options.thumbSizeTab!=options.thumbSize)) {
if ((!options.sameThumbSize && (options.thumbSizeTab!=options.thumbSize)) || (options.showFileNames || options.filmStripShowFileNames)) {
#if PROTECT_VECTORS
MYWRITERLOCK(l, entryRW);
#endif
@@ -952,7 +952,7 @@ void ThumbBrowserBase::enableTabMode(bool enable) {
#endif
if (!selected.empty()) {
if (inTabMode) {
if (enable) {
double h=selected[0]->getStartX();
#if PROTECT_VECTORS
MYREADERLOCK_RELEASE(l);

View File

@@ -53,6 +53,14 @@ class ThumbBrowserBase : public Gtk::VBox {
bool isDirty () { return dirty; }
};
public:
enum eLocation {
THLOC_BATCHQUEUE,
THLOC_FILEBROWSER,
THLOC_EDITOR
} location;
protected:
virtual int getMaxThumbnailHeight() const { return options.maxThumbnailHeight; } // Differs between batch and file
virtual void saveThumbnailHeight (int height)=0;
@@ -64,8 +72,6 @@ class ThumbBrowserBase : public Gtk::VBox {
int inW, inH;
bool inTabMode; // Tab mode has e.g. different preview heights
void resizeThumbnailArea (int w, int h);
void internalAreaResized (Gtk::Allocation& req);
void buttonPressed (int x, int y, int button, GdkEventType type, int state, int clx, int cly, int clw, int clh);
@@ -83,6 +89,8 @@ class ThumbBrowserBase : public Gtk::VBox {
void selectFirst (bool enlarge);
void selectLast (bool enlarge);
eLocation getLocation() { return location; }
protected:
int eventTime;

View File

@@ -29,7 +29,7 @@ ThumbBrowserEntryBase::ThumbBrowserEntryBase (const Glib::ustring& fname)
parent(NULL), bbSelected(false), bbFramed(false), bbPreview(NULL),
thumbnail(NULL), filename(fname), shortname(dispname), exifline(""), datetimeline(""),
selected(false), drawable(false), filtered(false), framed(false), processing(false), italicstyle(false),
edited(false), recentlysaved(false), updatepriority(false) {}
edited(false), recentlysaved(false), updatepriority(false), withFilename(WFNAME_NONE) {}
ThumbBrowserEntryBase::~ThumbBrowserEntryBase () {
@@ -109,7 +109,8 @@ void ThumbBrowserEntryBase::updateBackBuffer () {
int istartx = prex;
int istarty = prey;
if (options.showFileNames && options.overlayedFileNames) {
if ((parent->getLocation()!=ThumbBrowserBase::THLOC_EDITOR && options.showFileNames && options.overlayedFileNames)
|| (parent->getLocation()==ThumbBrowserBase::THLOC_EDITOR && options.filmStripShowFileNames && options.filmStripOverlayedFileNames)) {
cr->begin_new_path ();
cr->rectangle (istartx, istarty, prew, fnlabh+dtlabh+exlabh+2*iofs_y);
if ((texts.get_red_p()+texts.get_green_p()+texts.get_blue_p())/3 > 0.5)
@@ -123,18 +124,27 @@ void ThumbBrowserEntryBase::updateBackBuffer () {
istarty += iofs_y;
if (!bbIcons.empty()) {
int iwidth = igap;
int iwidth = 0;
int iheight = 0;
for (size_t i=0; i<bbIcons.size(); i++) {
iwidth += bbIcons[i]->get_width() + igap;
iwidth += bbIcons[i]->get_width() + (i>0 ? igap : 0);
if (bbIcons[i]->get_height() > iheight)
iheight = bbIcons[i]->get_height();
}
iheight += 2*igap;
if (!options.overlayedFileNames) {
if ((parent->getLocation()!=ThumbBrowserBase::THLOC_EDITOR && (!options.showFileNames || !options.overlayedFileNames))
|| (parent->getLocation()==ThumbBrowserBase::THLOC_EDITOR && (!options.filmStripShowFileNames || !options.filmStripOverlayedFileNames))) {
// Draw the transparent black background around icons
cr->begin_new_path ();
cr->rectangle (istartx-igap, istarty-igap, iwidth, iheight);
cr->set_source_rgba (0, 0, 0, 0.75);
cr->move_to(istartx-igap, istarty);
cr->rel_line_to(igap, -igap);
cr->rel_line_to(iwidth, 0);
cr->rel_line_to(igap, igap);
cr->rel_line_to(0, iheight);
cr->rel_line_to(-igap, igap);
cr->rel_line_to(-iwidth, 0);
cr->rel_line_to(-igap, -igap);
cr->rel_line_to(0, -iheight);
cr->set_source_rgba (0, 0, 0, 0.6);
cr->fill ();
}
for (size_t i=0; i<bbIcons.size(); i++) {
@@ -143,9 +153,14 @@ void ThumbBrowserEntryBase::updateBackBuffer () {
}
}
if( options.showFileNames ){
if ( ( (parent->getLocation()!=ThumbBrowserBase::THLOC_EDITOR && options.showFileNames)
|| (parent->getLocation()==ThumbBrowserBase::THLOC_EDITOR && options.filmStripShowFileNames))
&& withFilename>WFNAME_NONE)
{
int textposx_fn, textposx_ex, textposx_dt, textposy, textw;
if (!options.overlayedFileNames) {
if (! ((parent->getLocation()!=ThumbBrowserBase::THLOC_EDITOR && options.overlayedFileNames)
|| (parent->getLocation()==ThumbBrowserBase::THLOC_EDITOR && options.filmStripOverlayedFileNames)) )
{
textposx_fn = exp_width/2 - fnlabw/2;
if (textposx_fn<0) textposx_fn = 0;
textposx_ex = exp_width/2 - exlabw/2;
@@ -184,6 +199,7 @@ void ThumbBrowserEntryBase::updateBackBuffer () {
fontd.set_style (Pango::STYLE_NORMAL);
context->set_font_description (fontd);
if (withFilename==WFNAME_FULL) {
// draw date/time label
int tpos = fnlabh;
if (options.fbShowDateTime && datetimeline!="") {
@@ -202,6 +218,7 @@ void ThumbBrowserEntryBase::updateBackBuffer () {
tpos += exlabh;
}
}
}
}
void ThumbBrowserEntryBase::getTextSizes (int& infow, int& infoh) {
@@ -224,6 +241,11 @@ void ThumbBrowserEntryBase::getTextSizes (int& infow, int& infoh) {
Glib::RefPtr<Pango::Layout> fn = w->create_pango_layout(shortname);
fn->get_pixel_size (fnlabw, fnlabh);
// calculate cummulated height of all info fields
infoh = fnlabh;
infow = 0;
if (withFilename==WFNAME_FULL) {
// datetime
fontd.set_weight (Pango::WEIGHT_NORMAL);
context->set_font_description (fontd);
@@ -234,20 +256,27 @@ void ThumbBrowserEntryBase::getTextSizes (int& infow, int& infoh) {
fn = w->create_pango_layout (exifline);
fn->get_pixel_size (exlabw, exlabh);
// calculate cummulated height of all info fields
infoh = fnlabh;
infow = 0;
// add date/tile size:
if (options.fbShowDateTime) {
infoh += dtlabh;
if (dtlabw + 2*sideMargin > infow)
infow = dtlabw + 2*sideMargin;
}
else {
dtlabw = dtlabh = 0;
}
if (options.fbShowBasicExif) {
infoh += exlabh;
if (exlabw + 2*sideMargin > infow)
infow = exlabw + 2*sideMargin;
}
else {
exlabw = exlabh = 0;
}
}
else {
dtlabw = dtlabh = exlabw = exlabh = 0;
}
}
void ThumbBrowserEntryBase::resize (int h) {
@@ -264,15 +293,34 @@ void ThumbBrowserEntryBase::resize (int h) {
if (buttonSet)
buttonSet->getMinimalDimensions (bsw, bsh);
if (parent->getLocation() == ThumbBrowserBase::THLOC_FILEBROWSER) {
if (options.showFileNames)
withFilename = WFNAME_FULL;
else
withFilename = WFNAME_NONE;
}
else if (parent->getLocation() == ThumbBrowserBase::THLOC_BATCHQUEUE) {
withFilename = WFNAME_REDUCED;
}
else {
if (options.filmStripShowFileNames)
withFilename = WFNAME_REDUCED;
else
withFilename = WFNAME_NONE;
}
// calculate the height remaining for the thumbnail image
preh = height - upperMargin - 2*borderWidth - lowerMargin - bsh;
int infow=0;
int infoh=0;
if (options.showFileNames && !options.overlayedFileNames) {
if ( (parent->getLocation()!=ThumbBrowserBase::THLOC_EDITOR && options.showFileNames && !options.overlayedFileNames)
|| (parent->getLocation()==ThumbBrowserBase::THLOC_EDITOR && options.filmStripShowFileNames && !options.filmStripOverlayedFileNames))
{
// dimensions of the info text
getTextSizes (infow, infoh);
infoh += textGap;
preh -= infoh;
//preh -= infoh;
height += infoh;
}
// Minimum size for thumbs
if (preh<24){
@@ -283,7 +331,9 @@ void ThumbBrowserEntryBase::resize (int h) {
calcThumbnailSize (); // recalculates prew
width = prew + 2*sideMargin + 2*borderWidth;
if (options.showFileNames && !options.overlayedFileNames) {
if ( (parent->getLocation()!=ThumbBrowserBase::THLOC_EDITOR && options.showFileNames && !options.overlayedFileNames)
|| (parent->getLocation()==ThumbBrowserBase::THLOC_EDITOR && options.filmStripShowFileNames && !options.filmStripOverlayedFileNames))
{
width = prew + 2*sideMargin + 2*borderWidth;
if (width<infow + 2*sideMargin + 2*borderWidth)
width = infow + 2*sideMargin + 2*borderWidth;
@@ -298,7 +348,7 @@ void ThumbBrowserEntryBase::resize (int h) {
refreshThumbnailImage ();
}
else
updateBackBuffer();
backBuffer.clear(); // This will force a backBuffer update on queue_draw
drawable = true;
}
@@ -437,7 +487,7 @@ Glib::ustring ThumbBrowserEntryBase::getToolTip (int x, int y) {
if (buttonSet) tooltip = buttonSet->getToolTip (x, y);
// if the fileinfo is not shown anyway, make a tooltip with the info
if (!options.showFileNames && inside(x,y) && tooltip.empty()) {
if (withFilename<WFNAME_FULL && inside(x,y) && tooltip.empty()) {
tooltip = dispname;
if (options.fbShowDateTime && datetimeline!="") tooltip += Glib::ustring("\n") + datetimeline;
if (options.fbShowBasicExif && exifline!="") tooltip += Glib::ustring("\n") + exifline;

View File

@@ -27,6 +27,13 @@
class ThumbBrowserBase;
class ThumbBrowserEntryBase {
public:
enum eWithFilename {
WFNAME_NONE,
WFNAME_REDUCED,
WFNAME_FULL
};
protected:
int fnlabw, fnlabh; // dimensions of the filename label
int dtlabw, dtlabh; // dimensions of the date/time label
@@ -96,6 +103,7 @@ protected:
bool edited;
bool recentlysaved;
bool updatepriority;
eWithFilename withFilename;
ThumbBrowserEntryBase (const Glib::ustring& fname);
virtual ~ThumbBrowserEntryBase ();