diff --git a/uppsrc/CtrlLib/DropChoice.h b/uppsrc/CtrlLib/DropChoice.h index 4a30e8a4d..e60ee0357 100644 --- a/uppsrc/CtrlLib/DropChoice.h +++ b/uppsrc/CtrlLib/DropChoice.h @@ -113,6 +113,7 @@ public: PopUpTable& ListObject() { return list; } DropList& SetDropLines(int d) { list.SetDropLines(d); return *this; } + DropList& SetValueConvert(const Convert& cv); DropList& SetConvert(const Convert& cv); DropList& SetDisplay(int i, const Display& d); DropList& SetDisplay(const Display& d); diff --git a/uppsrc/CtrlLib/DropList.cpp b/uppsrc/CtrlLib/DropList.cpp index 4f7386c09..eb1711add 100644 --- a/uppsrc/CtrlLib/DropList.cpp +++ b/uppsrc/CtrlLib/DropList.cpp @@ -179,14 +179,19 @@ void DropList::SetValue(const Value& v) { Sync(); } -DropList& DropList::SetConvert(const Convert& cv) +DropList& DropList::SetValueConvert(const Convert& cv) { - list.ColumnAt(0).SetConvert(cv); valueconvert = &cv; Sync(); return *this; } +DropList& DropList::SetConvert(const Convert& cv) +{ + list.ColumnAt(0).SetConvert(cv); + return SetValueConvert(cv); +} + DropList& DropList::SetDisplay(int i, const Display& d) { list.SetDisplay(i, 0, d); diff --git a/uppsrc/plugin/jpg/jpgupp.cpp b/uppsrc/plugin/jpg/jpgupp.cpp index 05d85b53e..a413fbe0e 100644 --- a/uppsrc/plugin/jpg/jpgupp.cpp +++ b/uppsrc/plugin/jpg/jpgupp.cpp @@ -340,6 +340,8 @@ int JPGRaster::Data::ExifDir(const char *begin, int offset, IFD_TYPE type) // puts(NFormat("[%d]: tag %04x fmt %d, count %d, data %s", // i, tag, fmt, count, BinHexEncode(data, data + len))); if(type == BASE_IFD) { + if(tag == 0x112) + metadata.Add("orientation", int(data[0])); if(tag == 0x8825) { int offset = Exif32(data); // puts(NFormat("GPS IFD at %08x", offset));