From afaf63574240c3bcef2f5d30dfe01d51ba693b08 Mon Sep 17 00:00:00 2001 From: lltcggie Date: Mon, 8 Jun 2015 19:38:12 +0900 Subject: [PATCH] =?UTF-8?q?GUI=E3=81=AE=E3=83=87=E3=83=95=E3=82=A9?= =?UTF-8?q?=E3=83=AB=E3=83=88=E5=88=86=E5=89=B2=E3=82=B5=E3=82=A4=E3=82=BA?= =?UTF-8?q?=E3=81=8C=E3=81=99=E3=81=94=E3=81=8F=E5=A4=A7=E3=81=8D=E3=81=84?= =?UTF-8?q?=E5=80=A4=E3=81=AB=E3=81=AA=E3=81=A3=E3=81=A6=E3=81=97=E3=81=BE?= =?UTF-8?q?=E3=81=86=E3=81=93=E3=81=A8=E3=81=8C=E3=81=82=E3=82=8B=E3=83=90?= =?UTF-8?q?=E3=82=B0=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- waifu2x-caffe-gui/Source.cpp | 22 +++++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/waifu2x-caffe-gui/Source.cpp b/waifu2x-caffe-gui/Source.cpp index 253c644..111c759 100644 --- a/waifu2x-caffe-gui/Source.cpp +++ b/waifu2x-caffe-gui/Source.cpp @@ -27,6 +27,7 @@ const size_t AR_PATH_MAX(1024); const int MinCommonDivisor = 50; const int DefaultCommonDivisor = 128; +const std::pair DefaultCommonDivisorRange = {90, 140}; const char * const CropSizeListName = "crop_size_list.txt"; @@ -292,7 +293,7 @@ private: ), list.end()); int mindiff = INT_MAX; - int defaultIndex = 0; + int defaultIndex = -1; for (int i = 0; i < list.size(); i++) { const int n = list[i]; @@ -301,23 +302,34 @@ private: SendMessageA(hcrop, CB_ADDSTRING, 0, (LPARAM)str.c_str()); const int diff = abs(DefaultCommonDivisor - n); - if (diff < mindiff) + if (DefaultCommonDivisorRange.first <= n && n <= DefaultCommonDivisorRange.second && diff < mindiff) { mindiff = diff; defaultIndex = i; } } - if (SendMessageA(hcrop, CB_ADDSTRING, 0, (LPARAM)"-----------------------") == defaultIndex) - defaultIndex = 1; + SendMessageA(hcrop, CB_ADDSTRING, 0, (LPARAM)"-----------------------"); // CropSizeListの値を追加していく + mindiff = INT_MAX; + int defaultListIndex = -1; for (const auto n : CropSizeList) { std::string str(std::to_string(n)); - SendMessageA(hcrop, CB_ADDSTRING, 0, (LPARAM)str.c_str()); + const int index = SendMessageA(hcrop, CB_ADDSTRING, 0, (LPARAM)str.c_str()); + + const int diff = abs(DefaultCommonDivisor - n); + if (DefaultCommonDivisorRange.first <= n && n <= DefaultCommonDivisorRange.second && diff < mindiff) + { + mindiff = diff; + defaultListIndex = index; + } } + if (defaultIndex == -1) + defaultIndex = defaultListIndex; + if (GetWindowTextLength(hcrop) == 0) SendMessage(hcrop, CB_SETCURSEL, defaultIndex, 0); }