Commit 591a2a52 authored by captainwong's avatar captainwong

add some methods for HttpDlg

parent 0ab1dd7a
...@@ -11,22 +11,24 @@ using namespace jlib::qt; ...@@ -11,22 +11,24 @@ using namespace jlib::qt;
//namespace HBVideoPlatform { //namespace HBVideoPlatform {
//namespace common { //namespace common {
HttpDlg::HttpDlg(QWidget *parent, HttpDlgGif gif, int timeout) HttpDlg::HttpDlg(QWidget *parent, int timeout, HttpDlgGif gif)
: QDialog(parent) : QDialog(parent)
, gif_(gif)
, time_out_sec_(timeout) , time_out_sec_(timeout)
, gif_(gif)
{ {
setWindowModality(Qt::WindowModal); setWindowModality(Qt::WindowModal);
setWindowFlags(Qt::FramelessWindowHint); setWindowFlags(Qt::FramelessWindowHint | Qt::SubWindow);
if (!parent) { if (!parent) {
setAttribute(Qt::WA_TranslucentBackground); setAttribute(Qt::WA_TranslucentBackground);
} }
if (gif == HttpDlgGif::Spinner1s_200px) { /*if (gif == HttpDlgGif::Spinner1s_200px_gray) {
setFixedSize(200, 200); setFixedSize(200, 200);
} else { } else {
setFixedSize(630, 637); setFixedSize(630, 637);
} }*/
setFixedSize(200, 200);
label_ = new QLabel(this); label_ = new QLabel(this);
label_->resize(width(), height()); label_->resize(width(), height());
...@@ -92,13 +94,41 @@ void HttpDlg::post(const QNetworkRequest & request, const QByteArray & data) ...@@ -92,13 +94,41 @@ void HttpDlg::post(const QNetworkRequest & request, const QByteArray & data)
run(); run();
} }
void HttpDlg::put(const QNetworkRequest& request, const QByteArray& data)
{
if (connection_) {
disconnect(connection_);
}
connection_ = connect(mgr, &QNetworkAccessManager::finished, this, &HttpDlg::onFinished);
reply_ = mgr->put(request, data);
run();
}
void HttpDlg::patch(const QNetworkRequest& request, const QByteArray& data)
{
if (connection_) {
disconnect(connection_);
}
connection_ = connect(mgr, &QNetworkAccessManager::finished, this, &HttpDlg::onFinished);
reply_ = mgr->sendCustomRequest(request, "PATCH", data);
run();
}
void HttpDlg::deleteResource(const QNetworkRequest& request)
{
if (connection_) {
disconnect(connection_);
}
connection_ = connect(mgr, &QNetworkAccessManager::finished, this, &HttpDlg::onFinished);
reply_ = mgr->deleteResource(request);
run();
}
QString HttpDlg::getGifPath() QString HttpDlg::getGifPath()
{ {
switch (gif_) { switch (gif_) {
case HttpDlg::HttpDlgGif::Spinner1s_200px: return ":/jlibqt/Resources/Spinner-1s-200px.gif"; case HttpDlg::HttpDlgGif::Spinner1s_200px_gray: return ":/jlibqt/Resources/Spinner-1s-200px_gray.gif";
break; case HttpDlg::HttpDlgGif::Spinner1s_200px_blue: return ":/jlibqt/Resources/Spinner-1s-200px.gif";
default:
break;
} }
return QString(); return QString();
} }
......
...@@ -20,11 +20,12 @@ class HttpDlg : public QDialog ...@@ -20,11 +20,12 @@ class HttpDlg : public QDialog
public: public:
enum class HttpDlgGif { enum class HttpDlgGif {
Spinner1s_200px, Spinner1s_200px_gray,
Spinner1s_200px_blue,
}; };
HttpDlg(QWidget *parent = nullptr, HttpDlgGif gif = HttpDlgGif::Spinner1s_200px, int timeOut = 10); HttpDlg(QWidget *parent = nullptr, int timeOut = 10, HttpDlgGif gif = HttpDlgGif::Spinner1s_200px_gray);
~HttpDlg(); ~HttpDlg();
void get(const QUrl& url); void get(const QUrl& url);
...@@ -32,6 +33,11 @@ public: ...@@ -32,6 +33,11 @@ public:
void post(const QUrl& url); void post(const QUrl& url);
void post(const QNetworkRequest& request); void post(const QNetworkRequest& request);
void post(const QNetworkRequest& request, const QByteArray& data); void post(const QNetworkRequest& request, const QByteArray& data);
void put(const QNetworkRequest& request, const QByteArray& data = {});
void patch(const QNetworkRequest& request, const QByteArray& data = {});
void deleteResource(const QNetworkRequest& request);
std::error_code get_result() const { return result_; } std::error_code get_result() const { return result_; }
Json::Value getRoot() const { return root_; } Json::Value getRoot() const { return root_; }
...@@ -100,7 +106,7 @@ private: ...@@ -100,7 +106,7 @@ private:
QLabel* label_ = {}; QLabel* label_ = {};
QLabel* elapse_ = {}; QLabel* elapse_ = {};
HttpDlgGif gif_ = HttpDlgGif::Spinner1s_200px; HttpDlgGif gif_ = HttpDlgGif::Spinner1s_200px_gray;
QElapsedTimer timer_ = {}; QElapsedTimer timer_ = {};
}; };
......
<RCC> <RCC>
<qresource prefix="/jlibqt"> <qresource prefix="/jlibqt">
<file>Resources/Spinner-1s-200px.gif</file> <file>Resources/Spinner-1s-200px.gif</file>
<file>Resources/Spinner-1s-200px_gray.gif</file>
</qresource> </qresource>
</RCC> </RCC>
// Microsoft Visual C++ generated resource script.
//
#include "resource1.h"
#define APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 2 resource.
//
#include "winres.h"
/////////////////////////////////////////////////////////////////////////////
#undef APSTUDIO_READONLY_SYMBOLS
/////////////////////////////////////////////////////////////////////////////
// Ӣ() resources
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU)
LANGUAGE 4, 2
#ifdef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// TEXTINCLUDE
//
1 TEXTINCLUDE
BEGIN
"resource1.h\0"
END
2 TEXTINCLUDE
BEGIN
"#include ""winres.h""\r\n"
"\0"
END
3 TEXTINCLUDE
BEGIN
"\r\n"
"\0"
END
#endif // APSTUDIO_INVOKED
#endif // Ӣ() resources
/////////////////////////////////////////////////////////////////////////////
#ifndef APSTUDIO_INVOKED
/////////////////////////////////////////////////////////////////////////////
//
// Generated from the TEXTINCLUDE 3 resource.
//
/////////////////////////////////////////////////////////////////////////////
#endif // not APSTUDIO_INVOKED
...@@ -55,7 +55,7 @@ ...@@ -55,7 +55,7 @@
</PropertyGroup> </PropertyGroup>
<PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <PropertyGroup Label="QtSettings" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<QtInstall>5.9.8</QtInstall> <QtInstall>5.9.8</QtInstall>
<QtModules>core;gui;widgets</QtModules> <QtModules>core;gui;network;widgets</QtModules>
</PropertyGroup> </PropertyGroup>
<ImportGroup Condition="Exists('$(QtMsBuild)\qt.props')"> <ImportGroup Condition="Exists('$(QtMsBuild)\qt.props')">
<Import Project="$(QtMsBuild)\qt.props" /> <Import Project="$(QtMsBuild)\qt.props" />
...@@ -76,6 +76,9 @@ ...@@ -76,6 +76,9 @@
<OutputFile>$(OutDir)\$(ProjectName).lib</OutputFile> <OutputFile>$(OutDir)\$(ProjectName).lib</OutputFile>
<GenerateDebugInformation>true</GenerateDebugInformation> <GenerateDebugInformation>true</GenerateDebugInformation>
</Link> </Link>
<Lib>
<AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies>
</Lib>
</ItemDefinitionGroup> </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile> <ClCompile>
...@@ -112,7 +115,6 @@ ...@@ -112,7 +115,6 @@
<ItemGroup> <ItemGroup>
<ClInclude Include="Model\HttpDlgErrorCode.h" /> <ClInclude Include="Model\HttpDlgErrorCode.h" />
<ClInclude Include="resource.h" /> <ClInclude Include="resource.h" />
<ClInclude Include="resource1.h" />
<ClInclude Include="Util\QRunGuard.h" /> <ClInclude Include="Util\QRunGuard.h" />
<QtMoc Include="View\HttpDlg.h" /> <QtMoc Include="View\HttpDlg.h" />
<QtMoc Include="View\ProgressDialog.h" /> <QtMoc Include="View\ProgressDialog.h" />
...@@ -139,10 +141,7 @@ ...@@ -139,10 +141,7 @@
<QtUic Include="View\ProgressDialog.ui" /> <QtUic Include="View\ProgressDialog.ui" />
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ResourceCompile Include="qt.rc" /> <QtRcc Include="jlibqt.qrc" />
</ItemGroup>
<ItemGroup>
<QtRcc Include="qt.qrc" />
</ItemGroup> </ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Condition="Exists('$(QtMsBuild)\qt.targets')"> <ImportGroup Condition="Exists('$(QtMsBuild)\qt.targets')">
......
...@@ -115,9 +115,6 @@ ...@@ -115,9 +115,6 @@
<ClInclude Include="Util\QRunGuard.h"> <ClInclude Include="Util\QRunGuard.h">
<Filter>Util</Filter> <Filter>Util</Filter>
</ClInclude> </ClInclude>
<ClInclude Include="resource1.h">
<Filter>Header Files</Filter>
</ClInclude>
<ClInclude Include="Model\HttpDlgErrorCode.h"> <ClInclude Include="Model\HttpDlgErrorCode.h">
<Filter>Model</Filter> <Filter>Model</Filter>
</ClInclude> </ClInclude>
...@@ -165,12 +162,7 @@ ...@@ -165,12 +162,7 @@
</QtUic> </QtUic>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ResourceCompile Include="qt.rc"> <QtRcc Include="jlibqt.qrc">
<Filter>Resource Files</Filter>
</ResourceCompile>
</ItemGroup>
<ItemGroup>
<QtRcc Include="qt.qrc">
<Filter>Resource Files</Filter> <Filter>Resource Files</Filter>
</QtRcc> </QtRcc>
</ItemGroup> </ItemGroup>
......
//{{NO_DEPENDENCIES}}
// Microsoft Visual C++ generated include file.
// Used by qt.rc
// Next default values for new objects
//
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_NEXT_RESOURCE_VALUE 101
#define _APS_NEXT_COMMAND_VALUE 40001
#define _APS_NEXT_CONTROL_VALUE 1001
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif
...@@ -3,15 +3,26 @@ ...@@ -3,15 +3,26 @@
//#include "../../jlib/log2.h" //#include "../../jlib/log2.h"
#include "../../jlib/qt/QtDebug.h" #include "../../jlib/qt/QtDebug.h"
#include "../../jlib/qt/monitor.h" #include "../../jlib/qt/monitor.h"
#include "../../jlib/qt/View/HttpDlg.h"
using namespace jlib::qt;
int main(int argc, char *argv[]) int main(int argc, char *argv[])
{ {
QApplication a(argc, argv); QApplication a(argc, argv);
//jlib::init_logger(L"qt_test"); //jlib::init_logger(L"qt_test");
jlib::qt::test_monitor(); //jlib::qt::test_monitor();
//qt_test w;
//w.show();
Q_INIT_RESOURCE(jlibqt);
HttpDlg dlg(nullptr, 10);
QString url = "https://local.hb3344.com/api/test/version";
dlg.get(url);
qt_test w;
w.show();
return a.exec(); return a.exec();
} }
...@@ -2,21 +2,21 @@ ...@@ -2,21 +2,21 @@
#include <qlayout.h> #include <qlayout.h>
#include "../../jlib/log2.h" #include "../../jlib/log2.h"
#include "qt/ErrorCode.h" #include "../../jlib/qt/ErrorCode.h"
#include "qt/QtDebug.h" #include "../../jlib/qt/QtDebug.h"
#include "qt/QtDebugOutput.h" #include "../../jlib/qt/QtDebugOutput.h"
#include "qt/QtPathHelper.h" #include "../../jlib/qt/QtPathHelper.h"
#include "qt/QtStylesheet.h" #include "../../jlib/qt/QtStylesheet.h"
#include "qt/QtUtils.h" #include "../../jlib/qt/QtUtils.h"
#include "qt/Ctrl/ThreadCtrl.h" #include "../../jlib/qt/Ctrl/ThreadCtrl.h"
#include "qt/Model/ThreadModel.h" #include "../../jlib/qt/Model/ThreadModel.h"
#include "qt/View/BgColorBtn.h" #include "../../jlib/qt/Model/HttpDlgErrorCode.h"
#include "qt/View/HttpDlg.h" #include "../../jlib/qt/View/BgColorBtn.h"
#include "qt/View/HttpDlgErrorCode.h" #include "../../jlib/qt/View/HttpDlg.h"
#include "qt/View/IconBtn.h" #include "../../jlib/qt/View/IconBtn.h"
#include "qt/View/LoadingView.h" #include "../../jlib/qt/View/LoadingView.h"
#include "qt/View/PageTitle.h" #include "../../jlib/qt/View/TitleBar.h"
#include "qt/View/RndButton.h" #include "../../jlib/qt/View/RndButton.h"
using namespace jlib::qt; using namespace jlib::qt;
......
...@@ -67,12 +67,14 @@ ...@@ -67,12 +67,14 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType> <TreatWChar_tAsBuiltInType>true</TreatWChar_tAsBuiltInType>
<AdditionalIncludeDirectories>$(DEVLIBS)\jlib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>$(DEVLIBS)\jlib;$(DEVLIBS)\json\jsoncpp-1.9.4-install\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile> </ClCompile>
<Link> <Link>
<SubSystem>Windows</SubSystem> <SubSystem>Windows</SubSystem>
<OutputFile>$(OutDir)\$(ProjectName).exe</OutputFile> <OutputFile>$(OutDir)\$(ProjectName).exe</OutputFile>
<GenerateDebugInformation>true</GenerateDebugInformation> <GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>jlibqt.lib;$(DEVLIBS)\json\jsoncpp-1.9.4-install\bin\Debug\jsoncpp.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
</Link> </Link>
</ItemDefinitionGroup> </ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
...@@ -89,9 +91,6 @@ ...@@ -89,9 +91,6 @@
</Link> </Link>
</ItemDefinitionGroup> </ItemDefinitionGroup>
<ItemGroup> <ItemGroup>
<ClCompile Include="..\..\jlib\3rdparty\json\jsoncpp\json_reader.cpp" />
<ClCompile Include="..\..\jlib\3rdparty\json\jsoncpp\json_value.cpp" />
<ClCompile Include="..\..\jlib\3rdparty\json\jsoncpp\json_writer.cpp" />
<ClCompile Include="main.cpp" /> <ClCompile Include="main.cpp" />
<ClCompile Include="qt_test.cpp" /> <ClCompile Include="qt_test.cpp" />
</ItemGroup> </ItemGroup>
...@@ -104,9 +103,6 @@ ...@@ -104,9 +103,6 @@
<ItemGroup> <ItemGroup>
<QtRcc Include="qt_test.qrc" /> <QtRcc Include="qt_test.qrc" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\jlib\3rdparty\json\jsoncpp\json.h" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Condition="Exists('$(QtMsBuild)\qt.targets')"> <ImportGroup Condition="Exists('$(QtMsBuild)\qt.targets')">
<Import Project="$(QtMsBuild)\qt.targets" /> <Import Project="$(QtMsBuild)\qt.targets" />
......
...@@ -23,9 +23,6 @@ ...@@ -23,9 +23,6 @@
<Extensions>qrc;*</Extensions> <Extensions>qrc;*</Extensions>
<ParseFiles>false</ParseFiles> <ParseFiles>false</ParseFiles>
</Filter> </Filter>
<Filter Include="jsoncpp">
<UniqueIdentifier>{0ea00850-28a6-45f9-af68-6c656c3572f1}</UniqueIdentifier>
</Filter>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ClCompile Include="main.cpp"> <ClCompile Include="main.cpp">
...@@ -34,15 +31,6 @@ ...@@ -34,15 +31,6 @@
<ClCompile Include="qt_test.cpp"> <ClCompile Include="qt_test.cpp">
<Filter>Source Files</Filter> <Filter>Source Files</Filter>
</ClCompile> </ClCompile>
<ClCompile Include="..\..\jlib\3rdparty\json\jsoncpp\json_reader.cpp">
<Filter>jsoncpp</Filter>
</ClCompile>
<ClCompile Include="..\..\jlib\3rdparty\json\jsoncpp\json_value.cpp">
<Filter>jsoncpp</Filter>
</ClCompile>
<ClCompile Include="..\..\jlib\3rdparty\json\jsoncpp\json_writer.cpp">
<Filter>jsoncpp</Filter>
</ClCompile>
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<QtMoc Include="qt_test.h"> <QtMoc Include="qt_test.h">
...@@ -59,9 +47,4 @@ ...@@ -59,9 +47,4 @@
<Filter>Resource Files</Filter> <Filter>Resource Files</Filter>
</QtRcc> </QtRcc>
</ItemGroup> </ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\jlib\3rdparty\json\jsoncpp\json.h">
<Filter>jsoncpp</Filter>
</ClInclude>
</ItemGroup>
</Project> </Project>
\ No newline at end of file
...@@ -373,6 +373,11 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjinfo", "libjinfo\libjin ...@@ -373,6 +373,11 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjinfo", "libjinfo\libjin
EndProject EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjinfomt", "libjinfomt\libjinfomt.vcxproj", "{E8551DB0-274F-493A-88AF-7383E47F49FA}" Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjinfomt", "libjinfomt\libjinfomt.vcxproj", "{E8551DB0-274F-493A-88AF-7383E47F49FA}"
EndProject EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "misc", "misc", "{BCF77277-B4F8-49CF-B213-D8086F3BCEFD}"
ProjectSection(SolutionItems) = preProject
..\jlib\misc\sudoku.h = ..\jlib\misc\sudoku.h
EndProjectSection
EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|ARM = Debug|ARM Debug|ARM = Debug|ARM
...@@ -1218,6 +1223,7 @@ Global ...@@ -1218,6 +1223,7 @@ Global
{0E83FBE2-4696-41AD-9A5F-55B1401AB77C} = {0E6598D3-602D-4552-97F7-DC5AB458D553} {0E83FBE2-4696-41AD-9A5F-55B1401AB77C} = {0E6598D3-602D-4552-97F7-DC5AB458D553}
{441E6793-7CDA-4D51-81BD-7A38520F1C1D} = {729A65CE-3F07-4C2E-ACDC-F9EEC6477F2A} {441E6793-7CDA-4D51-81BD-7A38520F1C1D} = {729A65CE-3F07-4C2E-ACDC-F9EEC6477F2A}
{E8551DB0-274F-493A-88AF-7383E47F49FA} = {729A65CE-3F07-4C2E-ACDC-F9EEC6477F2A} {E8551DB0-274F-493A-88AF-7383E47F49FA} = {729A65CE-3F07-4C2E-ACDC-F9EEC6477F2A}
{BCF77277-B4F8-49CF-B213-D8086F3BCEFD} = {42703978-A988-403D-9723-E35527FA8A07}
EndGlobalSection EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {A8EBEA58-739C-4DED-99C0-239779F57D5D} SolutionGuid = {A8EBEA58-739C-4DED-99C0-239779F57D5D}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment