Bugfix: when 'off', "Show all" only shew the first frame
The QuickInfo panel now reflect the selected subframe's metadata See #4008
This commit is contained in:
parent
0807510603
commit
e97c7cad2c
@ -484,7 +484,12 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
EditorPanel::EditorPanel (FilePanel* filePanel)
|
EditorPanel::EditorPanel (FilePanel* filePanel)
|
||||||
: catalogPane (nullptr), realized (false), tbBeforeLock (nullptr), iHistoryShow (nullptr), iHistoryHide (nullptr), iTopPanel_1_Show (nullptr), iTopPanel_1_Hide (nullptr), iRightPanel_1_Show (nullptr), iRightPanel_1_Hide (nullptr), iBeforeLockON (nullptr), iBeforeLockOFF (nullptr), previewHandler (nullptr), beforePreviewHandler (nullptr), beforeIarea (nullptr), beforeBox (nullptr), afterBox (nullptr), beforeLabel (nullptr), afterLabel (nullptr), beforeHeaderBox (nullptr), afterHeaderBox (nullptr), parent (nullptr), parentWindow (nullptr), openThm (nullptr), isrc (nullptr), ipc (nullptr), beforeIpc (nullptr), err (0), isProcessing (false)
|
: catalogPane (nullptr), realized (false), tbBeforeLock (nullptr), iHistoryShow (nullptr), iHistoryHide (nullptr),
|
||||||
|
iTopPanel_1_Show (nullptr), iTopPanel_1_Hide (nullptr), iRightPanel_1_Show (nullptr), iRightPanel_1_Hide (nullptr),
|
||||||
|
iBeforeLockON (nullptr), iBeforeLockOFF (nullptr), previewHandler (nullptr), beforePreviewHandler (nullptr),
|
||||||
|
beforeIarea (nullptr), beforeBox (nullptr), afterBox (nullptr), beforeLabel (nullptr), afterLabel (nullptr),
|
||||||
|
beforeHeaderBox (nullptr), afterHeaderBox (nullptr), parent (nullptr), parentWindow (nullptr), openThm (nullptr),
|
||||||
|
selectedFrame(0), isrc (nullptr), ipc (nullptr), beforeIpc (nullptr), err (0), isProcessing (false)
|
||||||
{
|
{
|
||||||
|
|
||||||
epih = new EditorPanelIdleHelper;
|
epih = new EditorPanelIdleHelper;
|
||||||
@ -1137,6 +1142,9 @@ void EditorPanel::procParamsChanged (rtengine::procparams::ProcParams* params, r
|
|||||||
|
|
||||||
// if (ev!=EvPhotoLoaded)
|
// if (ev!=EvPhotoLoaded)
|
||||||
// saveLabel->set_markup (Glib::ustring("<span foreground=\"#AA0000\" weight=\"bold\">") + M("MAIN_BUTTON_SAVE") + "</span>");
|
// saveLabel->set_markup (Glib::ustring("<span foreground=\"#AA0000\" weight=\"bold\">") + M("MAIN_BUTTON_SAVE") + "</span>");
|
||||||
|
|
||||||
|
selectedFrame = params->raw.bayersensor.imageNum;
|
||||||
|
info_toggled();
|
||||||
}
|
}
|
||||||
|
|
||||||
void EditorPanel::setProgressState (bool inProcessing)
|
void EditorPanel::setProgressState (bool inProcessing)
|
||||||
@ -1314,16 +1322,16 @@ void EditorPanel::info_toggled ()
|
|||||||
|
|
||||||
const rtengine::FramesMetaData* idata = ipc->getInitialImage()->getMetaData();
|
const rtengine::FramesMetaData* idata = ipc->getInitialImage()->getMetaData();
|
||||||
|
|
||||||
if (idata && idata->hasExif()) {
|
if (idata && idata->hasExif(selectedFrame)) {
|
||||||
infoString = Glib::ustring::compose ("%1 + %2\n<span size=\"small\">f/</span><span size=\"large\">%3</span> <span size=\"large\">%4</span><span size=\"small\">s</span> <span size=\"small\">%5</span><span size=\"large\">%6</span> <span size=\"large\">%7</span><span size=\"small\">mm</span>",
|
infoString = Glib::ustring::compose ("%1 + %2\n<span size=\"small\">f/</span><span size=\"large\">%3</span> <span size=\"large\">%4</span><span size=\"small\">s</span> <span size=\"small\">%5</span><span size=\"large\">%6</span> <span size=\"large\">%7</span><span size=\"small\">mm</span>",
|
||||||
Glib::ustring (idata->getMake() + " " + idata->getModel()),
|
Glib::ustring (idata->getMake() + " " + idata->getModel()),
|
||||||
Glib::ustring (idata->getLens()),
|
Glib::ustring (idata->getLens()),
|
||||||
Glib::ustring (idata->apertureToString (idata->getFNumber())),
|
Glib::ustring (idata->apertureToString (idata->getFNumber(selectedFrame))),
|
||||||
Glib::ustring (idata->shutterToString (idata->getShutterSpeed())),
|
Glib::ustring (idata->shutterToString (idata->getShutterSpeed(selectedFrame))),
|
||||||
M ("QINFO_ISO"), idata->getISOSpeed(),
|
M ("QINFO_ISO"), idata->getISOSpeed(selectedFrame),
|
||||||
Glib::ustring::format (std::setw (3), std::fixed, std::setprecision (2), idata->getFocalLen()));
|
Glib::ustring::format (std::setw (3), std::fixed, std::setprecision (2), idata->getFocalLen(selectedFrame)));
|
||||||
|
|
||||||
expcomp = Glib::ustring (idata->expcompToString (idata->getExpComp(), true)); // maskZeroexpcomp
|
expcomp = Glib::ustring (idata->expcompToString (idata->getExpComp(selectedFrame), true)); // maskZeroexpcomp
|
||||||
|
|
||||||
if (!expcomp.empty ()) {
|
if (!expcomp.empty ()) {
|
||||||
infoString = Glib::ustring::compose ("%1 <span size=\"large\">%2</span><span size=\"small\">EV</span>",
|
infoString = Glib::ustring::compose ("%1 <span size=\"large\">%2</span><span size=\"small\">EV</span>",
|
||||||
@ -1351,7 +1359,7 @@ void EditorPanel::info_toggled ()
|
|||||||
if (isHDR) {
|
if (isHDR) {
|
||||||
infoString = Glib::ustring::compose ("%1\n" + M("QINFO_HDR"), infoString, numFrames);
|
infoString = Glib::ustring::compose ("%1\n" + M("QINFO_HDR"), infoString, numFrames);
|
||||||
if (numFrames == 1) {
|
if (numFrames == 1) {
|
||||||
int sampleFormat = idata->getSampleFormat();
|
int sampleFormat = idata->getSampleFormat(selectedFrame);
|
||||||
infoString = Glib::ustring::compose ("%1 / %2", infoString, M(Glib::ustring::compose("SAMPLEFORMAT_%1", sampleFormat)));
|
infoString = Glib::ustring::compose ("%1 / %2", infoString, M(Glib::ustring::compose("SAMPLEFORMAT_%1", sampleFormat)));
|
||||||
}
|
}
|
||||||
} else if (isPixelShift) {
|
} else if (isPixelShift) {
|
||||||
|
@ -212,6 +212,8 @@ private:
|
|||||||
Thumbnail* openThm; // may get invalid on external delete event
|
Thumbnail* openThm; // may get invalid on external delete event
|
||||||
Glib::ustring fname; // must be saved separately
|
Glib::ustring fname; // must be saved separately
|
||||||
|
|
||||||
|
int selectedFrame;
|
||||||
|
|
||||||
rtengine::InitialImage* isrc;
|
rtengine::InitialImage* isrc;
|
||||||
rtengine::StagedImageProcessor* ipc;
|
rtengine::StagedImageProcessor* ipc;
|
||||||
rtengine::StagedImageProcessor* beforeIpc; // for the before-after view
|
rtengine::StagedImageProcessor* beforeIpc; // for the before-after view
|
||||||
|
@ -262,7 +262,7 @@ void ExifPanel::addDirectory (const TagDirectory* dir, Gtk::TreeModel::Children
|
|||||||
if (checkForSeparator && i == 0) {
|
if (checkForSeparator && i == 0) {
|
||||||
for (int j = 0; j < dir->getCount(); ++j) {
|
for (int j = 0; j < dir->getCount(); ++j) {
|
||||||
Tag* t2 = (const_cast<TagDirectory*> (dir))->getTagByIndex (j);
|
Tag* t2 = (const_cast<TagDirectory*> (dir))->getTagByIndex (j);
|
||||||
const TagAttrib* currAttrib = t->getAttrib();
|
const TagAttrib* currAttrib = t2->getAttrib();
|
||||||
|
|
||||||
if (currAttrib && ((options.lastShowAllExif) || (!options.lastShowAllExif && currAttrib->action != AC_SYSTEM))) {
|
if (currAttrib && ((options.lastShowAllExif) || (!options.lastShowAllExif && currAttrib->action != AC_SYSTEM))) {
|
||||||
addSeparator();
|
addSeparator();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user