Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
J
jlib
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
captainwong
jlib
Commits
a214fe2d
Commit
a214fe2d
authored
May 08, 2024
by
captainwong
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
QrCodeViewer add scale
parent
d0505d80
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
439 additions
and
355 deletions
+439
-355
chrono.h
jlib/3rdparty/spdlog/fmt/bundled/chrono.h
+1
-1
observer.h
jlib/dp/observer.h
+65
-51
QrCodeView.cpp
jlib/qt/View/QrCodeView.cpp
+86
-79
QrCodeView.h
jlib/qt/View/QrCodeView.h
+25
-24
qt.vcxproj
jlib/qt/qt.vcxproj
+169
-167
qt.vcxproj.user
jlib/qt/qt.vcxproj.user
+11
-3
qt_test.vcxproj.user
test/qt_test/qt_test.vcxproj.user
+11
-3
testPathHelperDataSeperatedQt.vcxproj.user
...ataSeperatedQt/testPathHelperDataSeperatedQt.vcxproj.user
+11
-3
testPathHelperDataSeperatedWithoutBinQt.vcxproj.user
...inQt/testPathHelperDataSeperatedWithoutBinQt.vcxproj.user
+11
-3
testPathHelperLocal.vcxproj.user
test/testPathHelperLocal/testPathHelperLocal.vcxproj.user
+11
-3
testPathHelperLocalWithoutBin.vcxproj.user
...ocalWithoutBin/testPathHelperLocalWithoutBin.vcxproj.user
+11
-3
testSqlHelperQt.vcxproj.user
test/testSqlHelperQt/testSqlHelperQt.vcxproj.user
+13
-9
test_process_qt.vcxproj.user
test/test_process_qt/test_process_qt.vcxproj.user
+14
-6
No files found.
jlib/3rdparty/spdlog/fmt/bundled/chrono.h
View file @
a214fe2d
...
...
@@ -575,7 +575,7 @@ template <typename Period> FMT_CONSTEXPR inline const char* get_units() {
if
(
std
::
is_same
<
Period
,
std
::
femto
>::
value
)
return
"fs"
;
if
(
std
::
is_same
<
Period
,
std
::
pico
>::
value
)
return
"ps"
;
if
(
std
::
is_same
<
Period
,
std
::
nano
>::
value
)
return
"ns"
;
if
(
std
::
is_same
<
Period
,
std
::
micro
>::
value
)
return
"
µ
s"
;
if
(
std
::
is_same
<
Period
,
std
::
micro
>::
value
)
return
"
?
s"
;
if
(
std
::
is_same
<
Period
,
std
::
milli
>::
value
)
return
"ms"
;
if
(
std
::
is_same
<
Period
,
std
::
centi
>::
value
)
return
"cs"
;
if
(
std
::
is_same
<
Period
,
std
::
deci
>::
value
)
return
"ds"
;
...
...
jlib/dp/observer.h
View file @
a214fe2d
#pragma once
#include <memory>
#include <list>
#include <mutex>
#include "../base/noncopyable.h"
namespace
jlib
{
namespace
dp
{
template
<
typename
target
>
class
observer
:
public
std
::
enable_shared_from_this
<
observer
<
target
>>
{
public
:
virtual
void
on_update
(
const
target
&
)
=
0
;
};
template
<
typename
target
>
class
observable
:
public
noncopyable
{
public
:
typedef
observer
<
target
>
observer_type
;
typedef
std
::
weak_ptr
<
observer_type
>
observer_ptr
;
typedef
std
::
lock_guard
<
std
::
mutex
>
lock_guard_type
;
protected
:
mutable
std
::
mutex
mutex_
;
std
::
list
<
observer_ptr
>
observers_
;
public
:
void
register_observer
(
const
observer_ptr
&
obj
)
{
lock_guard_type
lock
(
mutex_
);
observers_
.
push_back
(
obj
);
}
void
notify_observers
(
const
target
&
_target
)
{
lock_guard_type
lock
(
mutex_
);
auto
iter
=
observers_
.
begin
();
while
(
iter
!=
observers_
.
end
())
{
std
::
shared_ptr
<
observer_type
>
obj
(
iter
->
lock
());
if
(
obj
)
{
obj
->
on_update
(
_target
);
++
iter
;
}
else
{
iter
=
observers_
.
erase
(
iter
);
}
}
}
};
}
// end of namespace dp
}
// end of namespace jlib
#pragma once
#include <memory>
#include <list>
#include <mutex>
#include "../base/noncopyable.h"
namespace
jlib
{
namespace
dp
{
template
<
typename
target
>
class
observer
:
public
std
::
enable_shared_from_this
<
observer
<
target
>>
{
public
:
virtual
void
on_update
(
const
target
&
)
=
0
;
};
template
<
typename
target
>
class
observable
:
public
noncopyable
{
public
:
typedef
observer
<
target
>
observer_type
;
typedef
std
::
weak_ptr
<
observer_type
>
observer_ptr
;
typedef
std
::
lock_guard
<
std
::
mutex
>
lock_guard_type
;
protected
:
mutable
std
::
mutex
mutex_
;
std
::
list
<
observer_ptr
>
observers_
;
public
:
void
register_observer
(
const
observer_ptr
&
obj
)
{
lock_guard_type
lock
(
mutex_
);
observers_
.
push_back
(
obj
);
}
void
notify_observers
(
const
target
&
_target
)
{
lock_guard_type
lock
(
mutex_
);
auto
iter
=
observers_
.
begin
();
while
(
iter
!=
observers_
.
end
())
{
std
::
shared_ptr
<
observer_type
>
obj
(
iter
->
lock
());
if
(
obj
)
{
obj
->
on_update
(
_target
);
++
iter
;
}
else
{
iter
=
observers_
.
erase
(
iter
);
}
}
}
void
notify_first_observer
(
const
target
&
_target
)
{
lock_guard_type
lock
(
mutex_
);
auto
iter
=
observers_
.
begin
();
while
(
iter
!=
observers_
.
end
())
{
std
::
shared_ptr
<
observer_type
>
obj
(
iter
->
lock
());
if
(
obj
)
{
obj
->
on_update
(
_target
);
return
;
}
else
{
iter
=
observers_
.
erase
(
iter
);
}
}
}
};
}
// end of namespace dp
}
// end of namespace jlib
jlib/qt/View/QrCodeView.cpp
View file @
a214fe2d
#include "QrCodeView.h"
#include <QLabel>
#include <QPainter>
#include "../Util/qrcode/QrCode.hpp"
static
void
paintQR
(
QPainter
&
painter
,
const
QSize
sz
,
const
QString
&
data
,
QColor
fg
)
{
// NOTE: At this point you will use the API to get the encoding and format you want, instead of my hardcoded stuff:
qrcodegen
::
QrCode
qr
=
qrcodegen
::
QrCode
::
encodeText
(
data
.
toUtf8
().
constData
(),
qrcodegen
::
QrCode
::
Ecc
::
LOW
);
const
int
s
=
qr
.
getSize
()
>
0
?
qr
.
getSize
()
:
1
;
const
double
w
=
sz
.
width
();
const
double
h
=
sz
.
height
();
const
double
aspect
=
w
/
h
;
const
double
size
=
((
aspect
>
1.0
)
?
h
:
w
);
const
double
scale
=
size
/
(
s
+
2
);
// NOTE: For performance reasons my implementation only draws the foreground parts in supplied color.
// It expects background to be prepared already (in white or whatever is preferred).
painter
.
setPen
(
Qt
::
NoPen
);
painter
.
setBrush
(
fg
);
for
(
int
y
=
0
;
y
<
s
;
y
++
)
{
for
(
int
x
=
0
;
x
<
s
;
x
++
)
{
const
int
color
=
qr
.
getModule
(
x
,
y
);
// 0 for white, 1 for black
if
(
0
!=
color
)
{
const
double
rx1
=
(
x
+
1
)
*
scale
,
ry1
=
(
y
+
1
)
*
scale
;
QRectF
r
(
rx1
,
ry1
,
scale
,
scale
);
painter
.
drawRects
(
&
r
,
1
);
}
}
}
}
static
QPixmap
genQR
(
const
QString
&
content
,
const
QSize
&
size
)
{
QPixmap
pixmap
(
size
);
pixmap
.
fill
(
Qt
::
white
);
QPainter
painter
(
&
pixmap
);
paintQR
(
painter
,
size
,
content
,
Qt
::
black
);
return
pixmap
;
}
QrCodeView
::
QrCodeView
(
QWidget
*
parent
,
const
QString
&
title
,
const
QString
&
content
,
const
QSize
size
)
:
QDialog
(
parent
)
{
create
(
title
,
size
);
setContent
(
content
);
}
QrCodeView
::
QrCodeView
(
QWidget
*
parent
,
const
QString
&
title
,
const
QPixmap
&
pixmap
,
const
QSize
size
)
:
QDialog
(
parent
)
{
create
(
title
,
size
);
setPixmap
(
pixmap
);
}
void
QrCodeView
::
create
(
const
QString
&
title
,
QSize
size
)
{
setWindowTitle
(
title
);
setWindowFlags
(
windowFlags
()
&
~
Qt
::
WindowContextHelpButtonHint
);
if
(
!
size
.
isValid
())
{
size
=
{
400
,
400
};
}
setFixedSize
(
size
);
label
=
new
QLabel
(
this
);
label
->
resize
(
size
);
label
->
move
(
0
,
0
);
}
void
QrCodeView
::
setContent
(
const
QString
&
content
)
{
setPixmap
(
genQR
(
content
,
size
()));
}
void
QrCodeView
::
setPixmap
(
const
QPixmap
&
pixmap
)
{
auto
pix
=
pixmap
.
scaled
(
size
());
label
->
setPixmap
(
pix
);
update
();
}
#include "QrCodeView.h"
#include <QLabel>
#include <QPainter>
#include "../Util/qrcode/QrCode.hpp"
#include "../QtDebug.h"
#include "../QtUtils.h"
static
void
paintQR
(
QPainter
&
painter
,
const
QSize
sz
,
const
QString
&
data
,
QColor
fg
)
{
// NOTE: At this point you will use the API to get the encoding and format you want, instead of my hardcoded stuff:
qrcodegen
::
QrCode
qr
=
qrcodegen
::
QrCode
::
encodeText
(
data
.
toUtf8
().
constData
(),
qrcodegen
::
QrCode
::
Ecc
::
LOW
);
const
int
s
=
qr
.
getSize
()
>
0
?
qr
.
getSize
()
:
1
;
const
double
w
=
sz
.
width
();
const
double
h
=
sz
.
height
();
const
double
aspect
=
w
/
h
;
const
double
size
=
((
aspect
>
1.0
)
?
h
:
w
);
const
double
scale
=
size
/
(
s
+
2
);
// NOTE: For performance reasons my implementation only draws the foreground parts in supplied color.
// It expects background to be prepared already (in white or whatever is preferred).
painter
.
setPen
(
Qt
::
NoPen
);
painter
.
setBrush
(
fg
);
for
(
int
y
=
0
;
y
<
s
;
y
++
)
{
for
(
int
x
=
0
;
x
<
s
;
x
++
)
{
const
int
color
=
qr
.
getModule
(
x
,
y
);
// 0 for white, 1 for black
if
(
0
!=
color
)
{
const
double
rx1
=
(
x
+
1
)
*
scale
,
ry1
=
(
y
+
1
)
*
scale
;
QRectF
r
(
rx1
,
ry1
,
scale
,
scale
);
painter
.
drawRects
(
&
r
,
1
);
}
}
}
}
static
QPixmap
genQR
(
const
QString
&
content
,
const
QSize
&
size
)
{
QPixmap
pixmap
(
size
);
pixmap
.
fill
(
Qt
::
white
);
QPainter
painter
(
&
pixmap
);
paintQR
(
painter
,
size
,
content
,
Qt
::
black
);
return
pixmap
;
}
QrCodeView
::
QrCodeView
(
QWidget
*
parent
,
const
QString
&
title
,
const
QString
&
content
,
const
QSize
size
,
float
scale
)
:
QDialog
(
parent
)
{
jlib
::
qt
::
fill_bg_with_color
(
this
,
Qt
::
white
);
create
(
title
,
size
,
scale
);
setContent
(
content
);
}
QrCodeView
::
QrCodeView
(
QWidget
*
parent
,
const
QString
&
title
,
const
QPixmap
&
pixmap
,
const
QSize
size
,
float
scale
)
:
QDialog
(
parent
)
{
create
(
title
,
size
,
scale
);
setPixmap
(
pixmap
);
}
void
QrCodeView
::
create
(
const
QString
&
title
,
QSize
size
,
float
scale
)
{
setWindowTitle
(
title
);
setWindowFlags
(
windowFlags
()
&
~
Qt
::
WindowContextHelpButtonHint
);
if
(
!
size
.
isValid
())
{
size
=
{
400
,
400
};
}
setFixedSize
(
size
);
if
(
scale
<
0.1
f
)
{
scale
=
0.1
f
;
}
if
(
scale
>=
0.99
)
{
scale
=
1.0
f
;
}
QSize
lbl_size
=
size
*
scale
;
MYQDEBUG
<<
"size"
<<
size
<<
"lbl_size"
<<
lbl_size
;
label
=
new
QLabel
(
this
);
label
->
setFixedSize
(
lbl_size
);
label
->
move
((
size
.
width
()
-
lbl_size
.
width
())
/
2
,
(
size
.
height
()
-
lbl_size
.
height
())
/
2
);
}
void
QrCodeView
::
setContent
(
const
QString
&
content
)
{
setPixmap
(
genQR
(
content
,
label
->
size
()));
}
void
QrCodeView
::
setPixmap
(
const
QPixmap
&
pixmap
)
{
auto
pix
=
pixmap
.
scaled
(
label
->
size
());
MYQDEBUG
<<
"label->size"
<<
label
->
size
()
<<
"pix size"
<<
pix
.
size
();
label
->
setPixmap
(
pix
);
update
();
}
jlib/qt/View/QrCodeView.h
View file @
a214fe2d
#pragma once
#include <QDialog>
#include <QPixmap>
class
QLabel
;
class
QrCodeView
:
public
QDialog
{
Q_OBJECT
public
:
QrCodeView
(
QWidget
*
parent
,
const
QString
&
title
,
const
QString
&
content
,
const
QSize
size
=
QSize
(
400
,
400
));
QrCodeView
(
QWidget
*
parent
,
const
QString
&
title
,
const
QPixmap
&
pixmap
,
const
QSize
size
=
QSize
(
400
,
400
));
void
setContent
(
const
QString
&
content
);
void
setPixmap
(
const
QPixmap
&
pixmap
);
protected
:
void
create
(
const
QString
&
title
,
QSize
size
);
private
:
QLabel
*
label
{};
};
#pragma once
#include <QDialog>
#include <QPixmap>
class
QLabel
;
class
QrCodeView
:
public
QDialog
{
Q_OBJECT
public
:
// scale is the qrcode size/widget size ratio, 0.1 ~1
QrCodeView
(
QWidget
*
parent
,
const
QString
&
title
,
const
QString
&
content
,
const
QSize
size
=
QSize
(
400
,
400
),
float
scale
=
1
.
0
f
);
QrCodeView
(
QWidget
*
parent
,
const
QString
&
title
,
const
QPixmap
&
pixmap
,
const
QSize
size
=
QSize
(
400
,
400
),
float
scale
=
1
.
0
f
);
void
setContent
(
const
QString
&
content
);
void
setPixmap
(
const
QPixmap
&
pixmap
);
protected
:
void
create
(
const
QString
&
title
,
QSize
size
,
float
scale
);
private
:
QLabel
*
label
{};
};
jlib/qt/qt.vcxproj
View file @
a214fe2d
This diff is collapsed.
Click to expand it.
jlib/qt/qt.vcxproj.user
View file @
a214fe2d
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Release|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
</Project>
\ No newline at end of file
test/qt_test/qt_test.vcxproj.user
View file @
a214fe2d
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Release|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
</Project>
\ No newline at end of file
test/testPathHelperDataSeperatedQt/testPathHelperDataSeperatedQt.vcxproj.user
View file @
a214fe2d
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Release|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
</Project>
\ No newline at end of file
test/testPathHelperDataSeperatedWithoutBinQt/testPathHelperDataSeperatedWithoutBinQt.vcxproj.user
View file @
a214fe2d
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Release|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
</Project>
\ No newline at end of file
test/testPathHelperLocal/testPathHelperLocal.vcxproj.user
View file @
a214fe2d
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Release|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
</Project>
\ No newline at end of file
test/testPathHelperLocalWithoutBin/testPathHelperLocalWithoutBin.vcxproj.user
View file @
a214fe2d
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Release|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
</Project>
\ No newline at end of file
test/testSqlHelperQt/testSqlHelperQt.vcxproj.user
View file @
a214fe2d
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
>
<QtLastBackgroundBuild>
2021-12-05T20:56:32.1228386Z
</QtLastBackgroundBuild>
</PropertyGroup>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Release|Win32'"
>
<QtLastBackgroundBuild>
2021-12-05T20:46:31.9967457Z
</QtLastBackgroundBuild>
</PropertyGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
/>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
>
<QtLastBackgroundBuild>
2021-12-05T20:56:32.1228386Z
</QtLastBackgroundBuild>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Release|Win32'"
>
<QtLastBackgroundBuild>
2021-12-05T20:46:31.9967457Z
</QtLastBackgroundBuild>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
</Project>
\ No newline at end of file
test/test_process_qt/test_process_qt.vcxproj.user
View file @
a214fe2d
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
>
<LocalDebuggerCommandArguments>
$(QmlDebug)
>
p.txt
</LocalDebuggerCommandArguments>
<DebuggerFlavor>
WindowsLocalDebugger
</DebuggerFlavor>
</PropertyGroup>
<?xml version="1.0" encoding="utf-8"?>
<Project
ToolsVersion=
"Current"
xmlns=
"http://schemas.microsoft.com/developer/msbuild/2003"
>
<PropertyGroup
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
>
<LocalDebuggerCommandArguments>
$(QmlDebug)
>
p.txt
</LocalDebuggerCommandArguments>
<DebuggerFlavor>
WindowsLocalDebugger
</DebuggerFlavor>
</PropertyGroup>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Debug|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
<PropertyGroup
Label=
"QtSettings"
Condition=
"'$(Configuration)|$(Platform)'=='Release|Win32'"
>
<QtTouchProperty>
</QtTouchProperty>
</PropertyGroup>
</Project>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment