Skip to content

Commit 4614276

Browse files
committed
Fixed file format check, add help button to server list popup
* Fixed missing GUID argument in call to InstallIcon in FloatingWindow * Add "emf" and "wmf" to supported image format list
1 parent 015ab21 commit 4614276

31 files changed

+123
-62
lines changed

Docs/Pics/server_list.png

35.9 KB
Loading

Docs/index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<html>
22
<head>
3-
<meta http-equiv="refresh" content="0; url=ru_RU/index.html">
3+
<meta http-equiv="refresh" content="0; url=ru/index.html">
44
</head>
55
<body>
66
</body>
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ <h1>Uptooda</h1> <div id="version"></div>
3434
<li><strong>Загрузка изображений и файлов в интернет</strong> <br />Программа позволяет загружать изображения и файлы на множество сайтов &nbsp;(<a href="https://svistunov.dev/ru/imageuploader_servers" target="_blank">список</a>).
3535
Среди них такие сайты, как fastpic.ru, flickr.com, Google Drive, Yandex.Disk. Также можно загружать на FTP, SFTP или WebDav сервер.<br /><br />
3636
При этом программа автоматически генерирует миниатюры желаемого размера, масштабирует изображения, по желанию может добавить надпись или логотип на изображение.
37-
Поддерживаются форматы изображений JPG, PNG, BMP, GIF, TIFF, WEBP.<br />После загрузки программа выдает список ссылок или коды HTML, BBCode и Markdown (для форумов, блогов и т.п.).
37+
Поддерживаются форматы изображений JPG, PNG, GIF, WEBP, а также только на чтение: BMP, TIFF, HEIF, HEIC, AVIF, WMF, EMF. <br />После загрузки программа выдает список ссылок или коды HTML, BBCode и Markdown (для форумов, блогов и т.п.).
3838
Ссылки могут быть автоматически скопированы в буфер обмена.
3939
</li>
4040
<li><strong>Извлечение кадров из видео-файлов</strong><br /> Программа умеет извлекать заданное количество кадров из видеофайлов большинства современных форматов. Uptooda может использовать как кодеки, установленные в вашей системе, так и кодеки, распространяемые вместе с программой.
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,19 @@ <h3>Выбор области экрана с помощью мыши (стар
8787
Чтобы поменять цвет линии, нажмите среднюю клавишу мыши. Чтобы уменьшить или увеличить ширину линии, нажимайте клавиши "[" и "]".
8888
</div>
8989

90+
<h2 id="serverlist">Окно выбора сервера</h2>
91+
<div class="image"><img src="../Pics/server_list.png" title="Окно со списком серверов" alt="Окно со списком серверов"/></div>
92+
<p>
93+
В нём отображается таблица со списком серверов (хостингов) с возможностью фильтрации по типу и по названию.
94+
В таблице также отображается максимально допустимый размер файла, время хранения файла в днях, список поддерживаемых форматов и поддерживается ли учетная запись на данном сервере.
95+
Значения, перечисленные через слэш "/", относятся к разным видам учетных записей. Первое значение относится к анонимному пользователю,
96+
второе к зарегистрированному. Третье значение может относиться, например, к premium-аккаунту (это зависит от условий самого хостинга).
97+
</p>
98+
<b>Время хранения</b>
99+
<p>
100+
Знак "∞" означает неограниченное время хранения. Число дней, рядом с которым стоит знак "⤓", означает, какое количество дней должно пройти после последнего скачивания (просмотра) файла,
101+
чтобы файл был удалён с сервера.
102+
</p>
90103
</div>
91104
<div id="footer">
92105

Source/Core/FileTypeCheckTask.cpp

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,11 @@
1010

1111
constexpr auto MAX_BAD_ITEMS = std::numeric_limits<size_t>::max();
1212

13-
FileTypeCheckTask::FileTypeCheckTask(IFileList* fileList, const ServerProfileGroup& sessionImageServer, const ServerProfileGroup& sessionFileServer)
14-
:
15-
fileList_(fileList),
16-
sessionImageServer_(sessionImageServer),
17-
sessionFileServer_(sessionFileServer)
18-
{
13+
FileTypeCheckTask::FileTypeCheckTask(IFileList* fileList, const ServerProfileGroup& sessionImageServer, const ServerProfileGroup& sessionFileServer, ImageUploadParams defaultImageUploadParams) :
14+
fileList_(fileList)
15+
, sessionImageServer_(sessionImageServer)
16+
, sessionFileServer_(sessionFileServer)
17+
, defaultImageUploadParams_(std::move(defaultImageUploadParams)) {
1918

2019
}
2120

@@ -51,7 +50,7 @@ BackgroundTaskResult FileTypeCheckTask::doJob()
5150

5251

5352
if (item->isImage()) {
54-
ImageConverterFilter::supposedOutputFormat(sf, serverProfile);
53+
ImageConverterFilter::supposedOutputFormat(sf, serverProfile, defaultImageUploadParams_);
5554
}
5655
if (sf.fileSize < 0) {
5756
sf.fileSize = size;

Source/Core/FileTypeCheckTask.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ struct BadFileFormat {
1515

1616
class FileTypeCheckTask: public BackgroundTask {
1717
public:
18-
explicit FileTypeCheckTask(IFileList* fileList, const ServerProfileGroup& sessionImageServer, const ServerProfileGroup& sessionFileServer);
18+
explicit FileTypeCheckTask(IFileList* fileList, const ServerProfileGroup& sessionImageServer, const ServerProfileGroup& sessionFileServer, ImageUploadParams defaultImageUploadParams);
1919

2020
BackgroundTaskResult doJob() override;
2121

@@ -30,4 +30,5 @@ class FileTypeCheckTask: public BackgroundTask {
3030
ServerProfileGroup sessionFileServer_;
3131
std::string message_;
3232
std::vector<BadFileFormat> errors_;
33+
ImageUploadParams defaultImageUploadParams_;
3334
};

Source/Core/Settings/CommonGuiSettings.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,11 @@ limitations under the License.
2424
#include "Func/WinUtils.h"
2525
#endif
2626

27-
CommonGuiSettings::CommonGuiSettings()
28-
: BasicSettings()
29-
, imageServer(false) {
27+
CommonGuiSettings::CommonGuiSettings() : BasicSettings() {
3028
// Default values of settings
3129
MaxThreads = 3;
3230
DeveloperMode = false;
31+
3332
#ifndef IU_QT
3433
HistorySettings.EnableDownloading = true;
3534
HistorySettings.HistoryConverted = false;
@@ -188,6 +187,7 @@ void CommonGuiSettings::BindToManager() {
188187
urlShorteningServer.bind(upload["UrlShorteningServer"]);
189188
temporaryServer.bind(upload["TemporaryServer"]);
190189
imageSearchServer.bind(upload["ImageSearchServer"]);
190+
DefaultImageUploadParams.bind(upload["DefaultImageUploadParams"]);
191191

192192
SettingsNode& video = mgr_["VideoGrabber"];
193193
video.nm_bind(VideoSettings, NumOfFrames);

Source/Core/Settings/CommonGuiSettings.h

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -101,8 +101,8 @@ struct ScreenRecordingStruct {
101101

102102
#ifndef IU_QT
103103
struct MediaInfoSettingsStruct {
104-
int InfoType; // 0 - short summary, 1 - full info
105-
bool EnableLocalization;
104+
int InfoType = 0; // 0 - short summary, 1 - full info
105+
bool EnableLocalization = true;
106106
};
107107

108108
struct HistorySettingsStruct {
@@ -123,6 +123,7 @@ class CommonGuiSettings : public BasicSettings {
123123
ServerProfilesMap ServerProfiles;
124124
VideoSettingsStruct VideoSettings;
125125
ScreenRecordingStruct ScreenRecordingSettings;
126+
ImageUploadParams DefaultImageUploadParams;
126127
#ifndef IU_QT
127128
CString Language;
128129
CString DataFolder;
@@ -136,8 +137,8 @@ class CommonGuiSettings : public BasicSettings {
136137
MediaInfoSettingsStruct MediaInfoSettings;
137138
HistorySettingsStruct HistorySettings;
138139

139-
int CodeLang;
140-
int CodeType;
140+
int CodeLang = 0;
141+
int CodeType = 0;
141142

142143
bool IsPortable = true;
143144
CString VideoFolder, ImagesFolder;

0 commit comments

Comments
 (0)