Merge pull request #25 from casinocoin/development

Merge for v3.0.0.0 commits
This commit is contained in:
ajochems
2016-06-17 08:25:14 +02:00
committed by GitHub
48 changed files with 2313 additions and 746 deletions

1
DISCLAIMER Normal file
View File

@@ -0,0 +1 @@
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@@ -1,7 +1,6 @@
TEMPLATE = app TEMPLATE = app
TARGET = casinocoin-qt TARGET = casinocoin-qt
macx:TARGET = "CasinoCoin-Qt" VERSION = 3.0.0.0
VERSION = 2.0.0.0
INCLUDEPATH += src src/json src/qt INCLUDEPATH += src src/json src/qt
QT += core gui network widgets qml quick QT += core gui network widgets qml quick
DEFINES += QT_GUI BOOST_THREAD_USE_LIB BOOST_SPIRIT_THREADSAFE USE_IPV6 __NO_SYSTEM_INCLUDES DEFINES += QT_GUI BOOST_THREAD_USE_LIB BOOST_SPIRIT_THREADSAFE USE_IPV6 __NO_SYSTEM_INCLUDES
@@ -9,16 +8,17 @@ CONFIG += no_include_pwd
CONFIG += thread CONFIG += thread
CONFIG += static CONFIG += static
BOOST_INCLUDE_PATH=/home/ubuntu/CSC/deps/linux/boost_1_55_0 BOOST_LIB_SUFFIX=-mt
BOOST_LIB_PATH=/home/ubuntu/CSC/deps/linux/boost_1_55_0/stage/lib BOOST_INCLUDE_PATH=/home/ubuntu/deps/boost_1_60_0
BDB_INCLUDE_PATH=/home/ubuntu/CSC/deps/linux/db-4.8.30/build_unix BOOST_LIB_PATH=/home/ubuntu/deps/boost_1_60_0/stage/lib
BDB_LIB_PATH=/home/ubuntu/CSC/deps/linux/db-4.8.30/build_unix BDB_INCLUDE_PATH=/home/ubuntu/deps/db-5.1.29.NC/build_unix
OPENSSL_INCLUDE_PATH=/home/ubuntu/CSC/deps/linux/openssl-1.0.2d/include BDB_LIB_PATH=/home/ubuntu/deps/db-5.1.29.NC/build_unix
OPENSSL_LIB_PATH=/home/ubuntu/CSC/deps/linux/openssl-1.0.2d OPENSSL_INCLUDE_PATH=/home/ubuntu/deps/openssl-1.0.2g/include
MINIUPNPC_INCLUDE_PATH=/home/ubuntu/CSC/deps/linux/ OPENSSL_LIB_PATH=/home/ubuntu/deps/openssl-1.0.2g
MINIUPNPC_LIB_PATH=/home/ubuntu/CSC/deps/linux/miniupnpc MINIUPNPC_INCLUDE_PATH=/home/ubuntu/deps/miniupnpc-1.9
QRENCODE_INCLUDE_PATH=/home/ubuntu/CSC/deps/linux/qrencode-3.4.4 MINIUPNPC_LIB_PATH=/home/ubuntu/deps/miniupnpc-1.9
QRENCODE_LIB_PATH=/home/ubuntu/CSC/deps/linux/qrencode-3.4.4/.libs QRENCODE_INCLUDE_PATH=/home/ubuntu/deps/qrencode-3.4.4
QRENCODE_LIB_PATH=/home/ubuntu/deps/qrencode-3.4.4/.libs
OBJECTS_DIR = build OBJECTS_DIR = build
MOC_DIR = build MOC_DIR = build
@@ -110,7 +110,6 @@ QMAKE_CXXFLAGS_WARN_ON = -fdiagnostics-show-option -Wall -Wextra -Wformat -Wform
QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-local-typedefs QMAKE_CXXFLAGS_WARN_ON += -Wno-unused-local-typedefs
##### Start Project Files ##### ##### Start Project Files #####
DEPENDPATH += src src/json src/qt DEPENDPATH += src src/json src/qt
@@ -229,7 +228,8 @@ HEADERS += src/qt/bitcoingui.h \
src/qt/qtquick_controls/cpp/qmlexchangeslistmodel.h \ src/qt/qtquick_controls/cpp/qmlexchangeslistmodel.h \
src/qt/qtquick_controls/cpp/qmlexchangeslistitem.h \ src/qt/qtquick_controls/cpp/qmlexchangeslistitem.h \
src/qt/qtquick_controls/cpp/guiexchangeslistview.h \ src/qt/qtquick_controls/cpp/guiexchangeslistview.h \
src/qt/qtquick_controls/cpp/guiexchangescontrol.h src/qt/qtquick_controls/cpp/guiexchangescontrol.h \
src/qt/twitter/twitterwidget.h
SOURCES += src/qt/bitcoin.cpp \ SOURCES += src/qt/bitcoin.cpp \
src/qt/bitcoingui.cpp \ src/qt/bitcoingui.cpp \
@@ -330,7 +330,8 @@ SOURCES += src/qt/bitcoin.cpp \
src/qt/qtquick_controls/cpp/qmlexchangeslistmodel.cpp \ src/qt/qtquick_controls/cpp/qmlexchangeslistmodel.cpp \
src/qt/qtquick_controls/cpp/qmlexchangeslistitem.cpp \ src/qt/qtquick_controls/cpp/qmlexchangeslistitem.cpp \
src/qt/qtquick_controls/cpp/guiexchangeslistview.cpp \ src/qt/qtquick_controls/cpp/guiexchangeslistview.cpp \
src/qt/qtquick_controls/cpp/guiexchangescontrol.cpp src/qt/qtquick_controls/cpp/guiexchangescontrol.cpp \
src/qt/twitter/twitterwidget.cpp
RESOURCES += src/qt/bitcoin.qrc RESOURCES += src/qt/bitcoin.qrc
@@ -349,7 +350,6 @@ FORMS += src/qt/forms/sendcoinsdialog.ui \
src/qt/forms/pryptopage.ui \ src/qt/forms/pryptopage.ui \
src/qt/forms/infopage.ui src/qt/forms/infopage.ui
# "Other files" to show in Qt Creator
OTHER_FILES += README.md \ OTHER_FILES += README.md \
doc/*.rst \ doc/*.rst \
doc/*.txt \ doc/*.txt \
@@ -367,7 +367,8 @@ OTHER_FILES += README.md \
src/qt/qtquick_controls/qml/QmlGUIExchangesWindow.qml \ src/qt/qtquick_controls/qml/QmlGUIExchangesWindow.qml \
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarWindow.qml \ src/qt/qtquick_controls/qml/QmlGUIMenuToolbarWindow.qml \
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarListView.qml \ src/qt/qtquick_controls/qml/QmlGUIMenuToolbarListView.qml \
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarControl.qml src/qt/qtquick_controls/qml/QmlGUIMenuToolbarControl.qml \
src/qt/twitter/*.qml
DISTFILES += \ DISTFILES += \
QmlImports.qml QmlImports.qml

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject> <!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.5.0, 2015-12-02T00:40:08. --> <!-- Written by QtCreator 3.6.1, 2016-06-15T17:48:36. -->
<qtcreator> <qtcreator>
<data> <data>
<variable>EnvironmentId</variable> <variable>EnvironmentId</variable>
@@ -59,13 +59,13 @@
<variable>ProjectExplorer.Project.Target.0</variable> <variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 5.5.1 Static (qt5)</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 5.5.1 Static (qt5)</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Qt 5.5.1 Static (qt5)</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Qt 5.6 Static (qt5)</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{86a38728-97f7-49ac-b7f5-0ca2720c2f29}</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{86a38728-97f7-49ac-b7f5-0ca2720c2f29}</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">1</value> <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">1</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value> <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value> <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0"> <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/ubuntu/CSC/casinocoin-2.0.0.0</value> <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/ubuntu/casinocoin-3.0.0.0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0"> <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0"> <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value> <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
@@ -73,8 +73,7 @@
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value> <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value> <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments">USE_UPNP=- USE_QRCODE=1 USE_IPV6=1</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments">USE_UPNP=0 USE_QRCODE=1 USE_IPV6=1</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value> <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value> <value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value> <value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
@@ -126,7 +125,7 @@
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value> <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap> </valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1"> <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/ubuntu/CSC/casinocoin-2.0.0.0</value> <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/ubuntu/casinocoin-3.0.0.0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0"> <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0"> <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value> <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
@@ -134,7 +133,6 @@
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value> <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments">USE_UPNP=0 USE_QRCODE=1 USE_IPV6=1</value> <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments">USE_UPNP=0 USE_QRCODE=1 USE_IPV6=1</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value> <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value> <value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value>
@@ -202,6 +200,10 @@
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value> <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/> <valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0"> <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<value type="bool" key="Analyzer.QmlProfiler.FlushEnabled">false</value>
<value type="uint" key="Analyzer.QmlProfiler.FlushInterval">1000</value>
<value type="QString" key="Analyzer.QmlProfiler.LastTraceFile"></value>
<value type="bool" key="Analyzer.QmlProfiler.Settings.UseGlobalSettings">true</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/> <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value> <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value> <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
@@ -240,7 +242,272 @@
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/> <valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">casinocoin-qt-linux</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">casinocoin-qt-linux</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:/home/ubuntu/CSC/casinocoin-2.0.0.0/casinocoin-qt-linux.pro</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:/home/ubuntu/casinocoin-3.0.0.0/casinocoin-qt-linux.pro</value>
<value type="bool" key="QmakeProjectManager.QmakeRunConfiguration.UseLibrarySearchPath">true</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">casinocoin-qt-linux.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.Target.1</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 5.6.0 GCC 64bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 5.6.0 GCC 64bit</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">qt.56.gcc_64_kit</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">1</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/ubuntu/casinocoin-3.0.0.0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/ubuntu/casinocoin-3.0.0.0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments">USE_UPNP=0 USE_QRCODE=1 USE_IPV6=1</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.2">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/ubuntu/build-casinocoin-qt-linux-Desktop_Qt_5_6_0_GCC_64bit-Profile</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">true</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Profile</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">3</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<value type="bool" key="Analyzer.QmlProfiler.FlushEnabled">false</value>
<value type="uint" key="Analyzer.QmlProfiler.FlushInterval">1000</value>
<value type="QString" key="Analyzer.QmlProfiler.LastTraceFile"></value>
<value type="bool" key="Analyzer.QmlProfiler.Settings.UseGlobalSettings">true</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">casinocoin-qt-linux</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:/home/ubuntu/casinocoin-3.0.0.0/casinocoin-qt-linux.pro</value>
<value type="bool" key="QmakeProjectManager.QmakeRunConfiguration.UseLibrarySearchPath">true</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value> <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">casinocoin-qt-linux.pro</value> <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">casinocoin-qt-linux.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value> <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
@@ -258,7 +525,7 @@
</data> </data>
<data> <data>
<variable>ProjectExplorer.Project.TargetCount</variable> <variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value> <value type="int">2</value>
</data> </data>
<data> <data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable> <variable>ProjectExplorer.Project.Updater.FileVersion</variable>

457
casinocoin-qt-osx.pro Normal file
View File

@@ -0,0 +1,457 @@
TEMPLATE = app
TARGET = "CasinoCoin-Qt"
VERSION = 3.0.0.0
INCLUDEPATH += src src/json src/qt
QT += core gui network widgets qml quick
DEFINES += QT_GUI BOOST_THREAD_USE_LIB BOOST_SPIRIT_THREADSAFE USE_IPV6 __NO_SYSTEM_INCLUDES
CONFIG += no_include_pwd
CONFIG += thread
CONFIG += c++11
# For OSX Qt5.6 Static, Boost and BerkeleyDB must be compiled from source
#
# Qt5.6 Static
# -----------
# cd Qt56/5.6/Src
# ./configure -debug-and-release -opensource -confirm-license -platform macx-clang -opengl desktop -static -nomake examples -prefix $HOME/Qt56/static/5.6 -I /usr/local/Cellar/openssl/1.0.2h_1/include -L /usr/local/Cellar/openssl/1.0.2h_1/lib -make libs -qt-zlib -qt-pcre -qt-libpng -qt-libjpeg -qt-freetype -no-nis -no-cups
# make -j8
# make install
#
# Berkeley DB 5.1.29
# ----------------
# wget http://download.oracle.com/berkeley-db/db-5.1.29.NC.tar.gz
# tar xvzf db-5.1.29.NC.tar.gz
# cd db-5.1.29.NC/build_unix
# ../dist/configure --enable-cxx --disable-shared --disable-replication --disable-atomicsupport
# make
# sudo make install
#
# Boost 1.60
# -----------
# wget http://sourceforge.net/projects/boost/files/boost/1.60.0/boost_1_60_0.tar.gz
# tar xvzf boost_1_60_0.tar.gz
# cd boost_1_60_0
# ./bootstrap.sh
# ./b2 link=static --with-chrono --with-date_time --with-filesystem --with-program_options --with-system --with-thread --with-serialization
# cd ..
# cp -R boost_1_60_0 /usr/local
BOOST_LIB_SUFFIX =
BOOST_THREAD_LIB_SUFFIX =
BOOST_INCLUDE_PATH=/usr/local/boost_1_60_0
BOOST_LIB_PATH=/usr/local/boost_1_60_0/stage/lib
BDB_INCLUDE_PATH=/usr/local/BerkeleyDB.5.1/include
BDB_LIB_PATH=/usr/local/BerkeleyDB.5.1/lib
BDB_LIB_SUFFIX = -5.1
OPENSSL_INCLUDE_PATH=/usr/local/Cellar/openssl/1.0.2h_1/include
OPENSSL_LIB_PATH=/usr/local/Cellar/openssl/1.0.2h_1/lib
MINIUPNPC_INCLUDE_PATH=/usr/local/opt/miniupnpc/include
MINIUPNPC_LIB_PATH=/usr/local/opt/miniupnpc/lib
QRENCODE_INCLUDE_PATH=/usr/local/opt/qrencode/include
QRENCODE_LIB_PATH=/usr/local/opt/qrencode/lib
OBJECTS_DIR = build
MOC_DIR = build
UI_DIR = build
# Mac: compile for version (10.9, 64-bit)
#QMAKE_CXXFLAGS += -mmacosx-version-min=10.7 -arch x86_64 -isysroot $HOME/MacOSX-SDKs/MacOSX10.11.sdk
#QMAKE_CFLAGS += -mmacosx-version-min=10.7 -arch x86_64 -isysroot $HOME/MacOSX-SDKs/MacOSX10.11.sdk
#QMAKE_OBJECTIVE_CFLAGS += -mmacosx-version-min=10.7 -arch x86_64 -isysroot $HOME/MacOSX-SDKs/MacOSX10.11.sdk
QMAKE_MACOSX_DEPLOYMENT_TARGET = 10.7
#QMAKE_CXXFLAGS += -stdlib=libstdc++ -DBOOST_HAS_INT128=1
# for extra security against potential buffer overflows: enable GCCs Stack Smashing Protection
QMAKE_CXXFLAGS *= -fstack-protector-all
QMAKE_LFLAGS *= -fstack-protector-all -headerpad_max_install_names
# for extra security (see: https://wiki.debian.org/Hardening): this flag is GCC compiler-specific
QMAKE_CXXFLAGS *= -D_FORTIFY_SOURCE=2
# use: qmake "USE_QRCODE=1"
# libqrencode (http://fukuchi.org/works/qrencode/index.en.html) must be installed for support
contains(USE_QRCODE, 1) {
message(Building with QRCode support)
DEFINES += USE_QRCODE
#LIBS += -lqrencode
LIBS += -lqrencode $$join(QRENCODE_LIB_PATH,,-L,)
}
# use: qmake "USE_UPNP=1" ( enabled by default; default)
# or: qmake "USE_UPNP=0" (disabled by default)
# or: qmake "USE_UPNP=-" (not supported)
# miniupnpc (http://miniupnp.free.fr/files/) must be installed for support
contains(USE_UPNP, -) {
message(Building without UPNP support)
} else {
message(Building with UPNP support)
count(USE_UPNP, 0) {
USE_UPNP=1
}
DEFINES += USE_UPNP=$$USE_UPNP STATICLIB
INCLUDEPATH += $$MINIUPNPC_INCLUDE_PATH
LIBS += $$join(MINIUPNPC_LIB_PATH,,-L,) -lminiupnpc
}
# use: qmake "USE_DBUS=1"
contains(USE_DBUS, 1) {
message(Building with DBUS (Freedesktop notifications) support)
DEFINES += USE_DBUS
QT += dbus
}
# use: qmake "USE_IPV6=1" ( enabled by default; default)
# or: qmake "USE_IPV6=0" (disabled by default)
# or: qmake "USE_IPV6=-" (not supported)
contains(USE_IPV6, -) {
message(Building without IPv6 support)
} else {
count(USE_IPV6, 0) {
USE_IPV6=1
}
DEFINES += USE_IPV6=$$USE_IPV6
}
contains(BITCOIN_NEED_QT_PLUGINS, 1) {
DEFINES += BITCOIN_NEED_QT_PLUGINS
QTPLUGIN += qcncodecs qjpcodecs qtwcodecs qkrcodecs qtaccessiblewidgets
}
INCLUDEPATH += src/leveldb/include src/leveldb/helpers
LIBS += $$PWD/src/leveldb/libleveldb.a $$PWD/src/leveldb/libmemenv.a
# we use QMAKE_CXXFLAGS_RELEASE even without RELEASE=1 because we use RELEASE to indicate linking preferences not -O preferences
genleveldb.commands = cd $$PWD/src/leveldb && CC=$$QMAKE_CC CXX=$$QMAKE_CXX $(MAKE) OPT=\"$$QMAKE_CXXFLAGS $$QMAKE_CXXFLAGS_RELEASE\" libleveldb.a libmemenv.a
genleveldb.target = $$PWD/src/leveldb/libleveldb.a
genleveldb.depends = FORCE
PRE_TARGETDEPS += $$PWD/src/leveldb/libleveldb.a
QMAKE_EXTRA_TARGETS += genleveldb
# Gross ugly hack that depends on qmake internals, unfortunately there is no other way to do it.
QMAKE_CLEAN += $$PWD/src/leveldb/libleveldb.a; cd $$PWD/src/leveldb ; $(MAKE) clean
# regenerate src/build.h
contains(USE_BUILD_INFO, 1) {
genbuild.depends = FORCE
genbuild.commands = cd $$PWD; /bin/sh share/genbuild.sh $$OUT_PWD/build/build.h
genbuild.target = $$OUT_PWD/build/build.h
PRE_TARGETDEPS += $$OUT_PWD/build/build.h
QMAKE_EXTRA_TARGETS += genbuild
DEFINES += HAVE_BUILD_INFO
}
QMAKE_CXXFLAGS_WARN_ON = -fdiagnostics-show-option -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter -Wno-strict-aliasing -Wstack-protector -Wno-unused-local-typedefs
##### Start Project Files #####
DEPENDPATH += src src/json src/qt
HEADERS += src/qt/bitcoingui.h \
src/qt/transactiontablemodel.h \
src/qt/addresstablemodel.h \
src/qt/optionsdialog.h \
src/qt/sendcoinsdialog.h \
src/qt/coincontroldialog.h \
src/qt/coincontroltreewidget.h \
src/qt/addressbookpage.h \
src/qt/signverifymessagedialog.h \
src/qt/aboutdialog.h \
src/qt/editaddressdialog.h \
src/qt/bitcoinaddressvalidator.h \
src/alert.h \
src/addrman.h \
src/base58.h \
src/bignum.h \
src/checkpoints.h \
src/coincontrol.h \
src/compat.h \
src/sync.h \
src/util.h \
src/hash.h \
src/uint256.h \
src/serialize.h \
src/main.h \
src/net.h \
src/key.h \
src/db.h \
src/walletdb.h \
src/script.h \
src/init.h \
src/bloom.h \
src/mruset.h \
src/checkqueue.h \
src/json/json_spirit_writer_template.h \
src/json/json_spirit_writer.h \
src/json/json_spirit_value.h \
src/json/json_spirit_utils.h \
src/json/json_spirit_stream_reader.h \
src/json/json_spirit_reader_template.h \
src/json/json_spirit_reader.h \
src/json/json_spirit_error_position.h \
src/json/json_spirit.h \
src/qt/clientmodel.h \
src/qt/guiutil.h \
src/qt/transactionrecord.h \
src/qt/guiconstants.h \
src/qt/optionsmodel.h \
src/qt/monitoreddatamapper.h \
src/qt/transactiondesc.h \
src/qt/transactiondescdialog.h \
src/qt/bitcoinamountfield.h \
src/wallet.h \
src/keystore.h \
src/qt/transactionfilterproxy.h \
src/qt/transactionview.h \
src/qt/walletmodel.h \
src/qt/walletview.h \
src/qt/walletstack.h \
src/qt/walletframe.h \
src/bitcoinrpc.h \
src/qt/overviewpage.h \
src/qt/csvmodelwriter.h \
src/crypter.h \
src/qt/sendcoinsentry.h \
src/qt/qvalidatedlineedit.h \
src/qt/bitcoinunits.h \
src/qt/qvaluecombobox.h \
src/qt/askpassphrasedialog.h \
src/protocol.h \
src/qt/notificator.h \
src/qt/paymentserver.h \
src/allocators.h \
src/ui_interface.h \
src/qt/rpcconsole.h \
src/scrypt.h \
src/version.h \
src/netbase.h \
src/clientversion.h \
src/txdb.h \
src/leveldb.h \
src/threadsafety.h \
src/limitedmap.h \
src/qt/macnotificationhandler.h \
src/qt/splashscreen.h \
src/qt/CSCPublicAPI/casinocoinwebapi.h \
src/qt/CSCPublicAPI/casinocoinwebapiparser.h \
src/qt/CSCPublicAPI/jsonactivepromotionsparser.h \
src/qt/CSCPublicAPI/jsonactiveexchangesparser.h \
src/qt/CSCPublicAPI/jsonsingleactivepromotion.h \
src/qt/CSCPublicAPI/jsonsingleactiveexchange.h \
src/qt/qtquick_controls/cpp/guibannercontrol.h \
src/qt/qtquick_controls/cpp/guibannerlistview.h \
src/qt/qtquick_controls/cpp/guibannerwidget.h \
src/qt/qtquick_controls/cpp/listiteminterface.h \
src/qt/qtquick_controls/cpp/qmlbannerlistitem.h \
src/qt/qtquick_controls/cpp/qmlbannerlistmodel.h \
src/qt/qtquick_controls/cpp/qmlimageprovider.h \
src/qt/qtquick_controls/cpp/qmllistitem.h \
src/qt/qtquick_controls/cpp/qmllistmodel.h \
src/qt/qtquick_controls/cpp/qmlmenutoolbarmodel.h \
src/qt/qtquick_controls/cpp/qmlmenutoolbaritem.h \
src/qt/qtquick_controls/cpp/guimenutoolbarwidget.h \
src/qt/qtquick_controls/cpp/guimenutoolbarlistview.h \
src/qt/qtquick_controls/cpp/guimenutoolbarcontrol.h \
src/qt/gui20_skin.h \
src/qt/cscfusionstyle.h \
src/qt/pryptopage.h \
src/qt/currencies.h \
src/qt/CSCPublicAPI/jsoncoininfoparser.h \
src/qt/infopage.h \
src/qt/qtquick_controls/cpp/guiexchangeswidget.h \
src/qt/qtquick_controls/cpp/qmlexchangeslistmodel.h \
src/qt/qtquick_controls/cpp/qmlexchangeslistitem.h \
src/qt/qtquick_controls/cpp/guiexchangeslistview.h \
src/qt/qtquick_controls/cpp/guiexchangescontrol.h \
src/qt/twitter/twitterwidget.h
SOURCES += src/qt/bitcoin.cpp \
src/qt/bitcoingui.cpp \
src/qt/transactiontablemodel.cpp \
src/qt/addresstablemodel.cpp \
src/qt/optionsdialog.cpp \
src/qt/sendcoinsdialog.cpp \
src/qt/coincontroldialog.cpp \
src/qt/coincontroltreewidget.cpp \
src/qt/addressbookpage.cpp \
src/qt/signverifymessagedialog.cpp \
src/qt/aboutdialog.cpp \
src/qt/editaddressdialog.cpp \
src/qt/bitcoinaddressvalidator.cpp \
src/alert.cpp \
src/version.cpp \
src/sync.cpp \
src/util.cpp \
src/hash.cpp \
src/netbase.cpp \
src/key.cpp \
src/script.cpp \
src/main.cpp \
src/init.cpp \
src/net.cpp \
src/bloom.cpp \
src/checkpoints.cpp \
src/addrman.cpp \
src/db.cpp \
src/walletdb.cpp \
src/qt/clientmodel.cpp \
src/qt/guiutil.cpp \
src/qt/transactionrecord.cpp \
src/qt/optionsmodel.cpp \
src/qt/monitoreddatamapper.cpp \
src/qt/transactiondesc.cpp \
src/qt/transactiondescdialog.cpp \
src/qt/bitcoinstrings.cpp \
src/qt/bitcoinamountfield.cpp \
src/wallet.cpp \
src/keystore.cpp \
src/qt/transactionfilterproxy.cpp \
src/qt/transactionview.cpp \
src/qt/walletmodel.cpp \
src/qt/walletview.cpp \
src/qt/walletstack.cpp \
src/qt/walletframe.cpp \
src/bitcoinrpc.cpp \
src/rpcdump.cpp \
src/rpcnet.cpp \
src/rpcmining.cpp \
src/rpcwallet.cpp \
src/rpcblockchain.cpp \
src/rpcrawtransaction.cpp \
src/qt/overviewpage.cpp \
src/qt/csvmodelwriter.cpp \
src/crypter.cpp \
src/qt/sendcoinsentry.cpp \
src/qt/qvalidatedlineedit.cpp \
src/qt/bitcoinunits.cpp \
src/qt/qvaluecombobox.cpp \
src/qt/askpassphrasedialog.cpp \
src/protocol.cpp \
src/qt/notificator.cpp \
src/qt/paymentserver.cpp \
src/qt/rpcconsole.cpp \
src/scrypt.cpp \
src/noui.cpp \
src/leveldb.cpp \
src/txdb.cpp \
src/qt/splashscreen.cpp \
src/qt/CSCPublicAPI/casinocoinwebapi.cpp \
src/qt/CSCPublicAPI/casinocoinwebapiparser.cpp \
src/qt/CSCPublicAPI/jsonactivepromotionsparser.cpp \
src/qt/CSCPublicAPI/jsonactiveexchangesparser.cpp \
src/qt/CSCPublicAPI/jsonsingleactivepromotion.cpp \
src/qt/CSCPublicAPI/jsonsingleactiveexchange.cpp \
src/qt/qtquick_controls/cpp/guibannercontrol.cpp \
src/qt/qtquick_controls/cpp/guibannerlistview.cpp \
src/qt/qtquick_controls/cpp/guibannerwidget.cpp \
src/qt/qtquick_controls/cpp/qmlbannerlistitem.cpp \
src/qt/qtquick_controls/cpp/qmlbannerlistmodel.cpp \
src/qt/qtquick_controls/cpp/qmlimageprovider.cpp \
src/qt/qtquick_controls/cpp/qmllistitem.cpp \
src/qt/qtquick_controls/cpp/qmllistmodel.cpp \
src/qt/qtquick_controls/cpp/qmlmenutoolbarmodel.cpp \
src/qt/qtquick_controls/cpp/qmlmenutoolbaritem.cpp \
src/qt/qtquick_controls/cpp/guimenutoolbarwidget.cpp \
src/qt/qtquick_controls/cpp/guimenutoolbarlistview.cpp \
src/qt/qtquick_controls/cpp/guimenutoolbarcontrol.cpp \
src/qt/gui20_skin.cpp \
src/qt/cscfusionstyle.cpp \
src/qt/pryptopage.cpp \
src/qt/currencies.cpp \
src/qt/CSCPublicAPI/jsoncoininfoparser.cpp \
src/qt/infopage.cpp \
src/qt/qtquick_controls/cpp/guiexchangeswidget.cpp \
src/qt/qtquick_controls/cpp/qmlexchangeslistmodel.cpp \
src/qt/qtquick_controls/cpp/qmlexchangeslistitem.cpp \
src/qt/qtquick_controls/cpp/guiexchangeslistview.cpp \
src/qt/qtquick_controls/cpp/guiexchangescontrol.cpp \
src/qt/twitter/twitterwidget.cpp
RESOURCES += src/qt/bitcoin.qrc
FORMS += src/qt/forms/sendcoinsdialog.ui \
src/qt/forms/coincontroldialog.ui \
src/qt/forms/addressbookpage.ui \
src/qt/forms/signverifymessagedialog.ui \
src/qt/forms/aboutdialog.ui \
src/qt/forms/editaddressdialog.ui \
src/qt/forms/transactiondescdialog.ui \
src/qt/forms/overviewpage.ui \
src/qt/forms/sendcoinsentry.ui \
src/qt/forms/askpassphrasedialog.ui \
src/qt/forms/rpcconsole.ui \
src/qt/forms/optionsdialog.ui \
src/qt/forms/pryptopage.ui \
src/qt/forms/infopage.ui
OTHER_FILES += README.md \
doc/*.rst \
doc/*.txt \
doc/*.md \
src/qt/res/bitcoin-qt.rc \
src/qt/qtquick_controls/qml/QmlGUIBannerControl.qml \
src/qt/qtquick_controls/qml/QmlGUIBannerListView.qml \
src/qt/qtquick_controls/qml/QmlGUIBannerWindow.qml \
src/qt/qtquick_controls/qml/QmlGUIExchangesControl.qml \
src/qt/qtquick_controls/qml/QmlGUIExchangesListView.qml \
src/qt/qtquick_controls/qml/QmlGUIExchangesWindow.qml \
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarWindow.qml \
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarListView.qml \
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarControl.qml \
src/qt/twitter/*.qml
DISTFILES += \
QmlImports.qml
##### End Project Files #####
contains(USE_QRCODE, 1) {
HEADERS += src/qt/qrcodedialog.h
SOURCES += src/qt/qrcodedialog.cpp
FORMS += src/qt/forms/qrcodedialog.ui
}
contains(USE_SSE2, 1) {
DEFINES += USE_SSE2
gccsse2.input = SOURCES_SSE2
gccsse2.output = $$PWD/build/${QMAKE_FILE_BASE}.o
gccsse2.commands = $(CXX) -c $(CXXFLAGS) $(INCPATH) -o ${QMAKE_FILE_OUT} ${QMAKE_FILE_NAME} -msse2 -mstackrealign
QMAKE_EXTRA_COMPILERS += gccsse2
SOURCES_SSE2 += src/scrypt-sse2.cpp
}
# Todo: Remove this line when switching to Qt5, as that option was removed
CODECFORTR = UTF-8
# for lrelease/lupdate
# also add new translations to src/qt/bitcoin.qrc under translations/
TRANSLATIONS = $$files(src/qt/locale/bitcoin_*.ts)
isEmpty(QMAKE_LRELEASE) {
# win32:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]\\lrelease.exe
# else:QMAKE_LRELEASE = $$[QT_INSTALL_BINS]/lrelease
QMAKE_LRELEASE = $$[QT_INSTALL_BINS]/lrelease
}
isEmpty(QM_DIR):QM_DIR = $$PWD/src/qt/locale
# automatically build translations, so they can be included in resource file
TSQM.name = lrelease ${QMAKE_FILE_IN}
TSQM.input = TRANSLATIONS
TSQM.output = $$QM_DIR/${QMAKE_FILE_BASE}.qm
TSQM.commands = $$QMAKE_LRELEASE ${QMAKE_FILE_IN} -qm ${QMAKE_FILE_OUT}
TSQM.CONFIG = no_link
QMAKE_EXTRA_COMPILERS += TSQM
HEADERS += src/qt/macdockiconhandler.h src/qt/macnotificationhandler.h
OBJECTIVE_SOURCES += src/qt/macdockiconhandler.mm src/qt/macnotificationhandler.mm
LIBS += -framework Foundation -framework ApplicationServices -framework AppKit -framework CoreServices
DEFINES += MAC_OSX MSG_NOSIGNAL=0
ICON = src/qt/res/icons/casinocoin.icns
#QMAKE_CFLAGS_THREAD += -pthread
#QMAKE_LFLAGS_THREAD += -pthread
#QMAKE_CXXFLAGS_THREAD += -pthread
QMAKE_INFO_PLIST = share/qt/Info.plist
# Set libraries and includes at end, to use platform-defined defaults if not overridden
INCLUDEPATH += $$BOOST_INCLUDE_PATH $$BDB_INCLUDE_PATH $$OPENSSL_INCLUDE_PATH $$QRENCODE_INCLUDE_PATH
LIBS += $$join(BOOST_LIB_PATH,,-L,) $$join(BDB_LIB_PATH,,-L,) $$join(OPENSSL_LIB_PATH,,-L,) $$join(QRENCODE_LIB_PATH,,-L,)
LIBS += -lssl -lcrypto -ldb_cxx$$BDB_LIB_SUFFIX -lpthread
LIBS += -lboost_system$$BOOST_LIB_SUFFIX -lboost_filesystem$$BOOST_LIB_SUFFIX -lboost_program_options$$BOOST_LIB_SUFFIX -lboost_thread$$BOOST_THREAD_LIB_SUFFIX
LIBS += -lboost_chrono$$BOOST_LIB_SUFFIX
LIBS += -dead_strip
system($$QMAKE_LRELEASE -silent $$TRANSLATIONS)

View File

@@ -1,6 +1,6 @@
TEMPLATE = app TEMPLATE = app
TARGET = casinocoin-qt TARGET = casinocoin-qt
VERSION = 2.1.0.0 VERSION = 3.0.0.0
INCLUDEPATH += src src/json src/qt INCLUDEPATH += src src/json src/qt
QT += core gui network widgets qml quick QT += core gui network widgets qml quick
DEFINES += QT_GUI BOOST_THREAD_USE_LIB BOOST_SPIRIT_THREADSAFE USE_IPV6 DEFINES += QT_GUI BOOST_THREAD_USE_LIB BOOST_SPIRIT_THREADSAFE USE_IPV6
@@ -16,6 +16,8 @@ BOOST_INCLUDE_PATH=C:/msys64/usr/src/deps32/boost_1_60_0
BDB_INCLUDE_PATH=C:/msys64/usr/src/deps32/db-4.8.30.NC/build_unix BDB_INCLUDE_PATH=C:/msys64/usr/src/deps32/db-4.8.30.NC/build_unix
BDB_LIB_PATH=C:/msys64/usr/src/deps32/db-4.8.30.NC/build_unix BDB_LIB_PATH=C:/msys64/usr/src/deps32/db-4.8.30.NC/build_unix
BDB_LIB_SUFFIX=-4.8 BDB_LIB_SUFFIX=-4.8
OPENSSL_INCLUDE_PATH=C:/msys64/usr/src/deps32/openssl-1.0.2g/include
OPENSSL_LIB_PATH=C:/msys64/usr/src/deps32/openssl-1.0.2g
MINIUPNPC_INCLUDE_PATH=C:/msys64/usr/src/deps32/miniupnpc-1.9/include MINIUPNPC_INCLUDE_PATH=C:/msys64/usr/src/deps32/miniupnpc-1.9/include
MINIUPNPC_LIB_PATH=C:/msys64/usr/src/deps32/miniupnpc-1.9 MINIUPNPC_LIB_PATH=C:/msys64/usr/src/deps32/miniupnpc-1.9
QRENCODE_INCLUDE_PATH=C:/msys64/usr/src/deps32/qrencode-3.4.4 QRENCODE_INCLUDE_PATH=C:/msys64/usr/src/deps32/qrencode-3.4.4
@@ -220,7 +222,8 @@ HEADERS += src/qt/bitcoingui.h \
src/qt/qtquick_controls/cpp/qmlexchangeslistmodel.h \ src/qt/qtquick_controls/cpp/qmlexchangeslistmodel.h \
src/qt/qtquick_controls/cpp/qmlexchangeslistitem.h \ src/qt/qtquick_controls/cpp/qmlexchangeslistitem.h \
src/qt/qtquick_controls/cpp/guiexchangeslistview.h \ src/qt/qtquick_controls/cpp/guiexchangeslistview.h \
src/qt/qtquick_controls/cpp/guiexchangescontrol.h src/qt/qtquick_controls/cpp/guiexchangescontrol.h \
src/qt/twitter/twitterwidget.h
SOURCES += src/qt/bitcoin.cpp \ SOURCES += src/qt/bitcoin.cpp \
src/qt/bitcoingui.cpp \ src/qt/bitcoingui.cpp \
@@ -321,7 +324,8 @@ SOURCES += src/qt/bitcoin.cpp \
src/qt/qtquick_controls/cpp/qmlexchangeslistmodel.cpp \ src/qt/qtquick_controls/cpp/qmlexchangeslistmodel.cpp \
src/qt/qtquick_controls/cpp/qmlexchangeslistitem.cpp \ src/qt/qtquick_controls/cpp/qmlexchangeslistitem.cpp \
src/qt/qtquick_controls/cpp/guiexchangeslistview.cpp \ src/qt/qtquick_controls/cpp/guiexchangeslistview.cpp \
src/qt/qtquick_controls/cpp/guiexchangescontrol.cpp src/qt/qtquick_controls/cpp/guiexchangescontrol.cpp \
src/qt/twitter/twitterwidget.cpp
RESOURCES += src/qt/bitcoin.qrc RESOURCES += src/qt/bitcoin.qrc
@@ -357,7 +361,8 @@ OTHER_FILES += README.md \
src/qt/qtquick_controls/qml/QmlGUIExchangesWindow.qml \ src/qt/qtquick_controls/qml/QmlGUIExchangesWindow.qml \
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarWindow.qml \ src/qt/qtquick_controls/qml/QmlGUIMenuToolbarWindow.qml \
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarListView.qml \ src/qt/qtquick_controls/qml/QmlGUIMenuToolbarListView.qml \
src/qt/qtquick_controls/qml/QmlGUIMenuToolbarControl.qml src/qt/qtquick_controls/qml/QmlGUIMenuToolbarControl.qml \
src/qt/twitter/*.qml
DISTFILES += \ DISTFILES += \
QmlImports.qml QmlImports.qml
@@ -421,8 +426,8 @@ RC_FILE = src/qt/res/bitcoin-qt.rc
} }
# Set libraries and includes at end, to use platform-defined defaults if not overridden # Set libraries and includes at end, to use platform-defined defaults if not overridden
INCLUDEPATH += $$BDB_INCLUDE_PATH $$QRENCODE_INCLUDE_PATH $$BOOST_INCLUDE_PATH INCLUDEPATH += $$BDB_INCLUDE_PATH $$QRENCODE_INCLUDE_PATH $$BOOST_INCLUDE_PATH $$OPENSSL_INCLUDE_PATH
LIBS += $$join(BDB_LIB_PATH,,-L,) $$join(QRENCODE_LIB_PATH,,-L,) $$join(BOOST_LIB_PATH,,-L,) LIBS += $$join(BDB_LIB_PATH,,-L,) $$join(QRENCODE_LIB_PATH,,-L,) $$join(BOOST_LIB_PATH,,-L,) $$join(OPENSSL_LIB_PATH,,-L,)
LIBS += -lssl -lcrypto -ldb_cxx$$BDB_LIB_SUFFIX -lpthread LIBS += -lssl -lcrypto -ldb_cxx$$BDB_LIB_SUFFIX -lpthread
# -lgdi32 has to happen after -lcrypto (see #681) # -lgdi32 has to happen after -lcrypto (see #681)
LIBS += -lws2_32 -lole32 -lmswsock -loleaut32 -luuid -lgdi32 -lshlwapi LIBS += -lws2_32 -lole32 -lmswsock -loleaut32 -luuid -lgdi32 -lshlwapi

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject> <!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.5.0, 2016-04-06T14:37:15. --> <!-- Written by QtCreator 4.0.0, 2016-06-14T10:56:38. -->
<qtcreator> <qtcreator>
<data> <data>
<variable>EnvironmentId</variable> <variable>EnvironmentId</variable>
@@ -40,6 +40,7 @@
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value> <value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value> <value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value> <value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SmartSelectionChanging">true</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value> <value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value> <value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value> <value type="int" key="EditorConfiguration.TabSize">8</value>
@@ -58,14 +59,14 @@
<data> <data>
<variable>ProjectExplorer.Project.Target.0</variable> <variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt 5.5.1 MinGW Static 32bit</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 5.6.0 (mingw32)</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt 5.5.1 MinGW Static 32bit</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Qt 5.6.0 (mingw32)</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{7d14dbc8-0402-4b0e-98cc-9747e8c52c07}</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{b3cf2641-46bb-4b28-b7a6-2713d9074823}</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">1</value> <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value> <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value> <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0"> <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/a.jochems/Documents/GitHub/casinocoin-GUI-2.0</value> <value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory"></value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0"> <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0"> <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value> <value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
@@ -73,63 +74,7 @@
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value> <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">false</value> <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments">&quot;USE_UPNP=0&quot; &quot;USE_QRCODE=1&quot; &quot;USE_IPV6=1&quot;</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments">USE_UPNP=0 USE_QRCODE=1 USE_IPV6=1</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/a.jochems/Documents/GitHub/casinocoin-issue-13</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">false</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments">USE_UPNP=0 USE_QRCODE=1 USE_IPV6=1</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value> <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value> <value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value> <value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
@@ -174,6 +119,60 @@
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value> <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value> <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap> </valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">C:/Users/a.jochems/Documents/GitHub/casinocoin-development</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments">&quot;USE_UPNP=0&quot; &quot;USE_QRCODE=1&quot; &quot;USE_IPV6=1&quot;</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments"/>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value> <value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0"> <valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0"> <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
@@ -190,6 +189,11 @@
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value> <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/> <valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0"> <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<value type="bool" key="Analyzer.QmlProfiler.AggregateTraces">false</value>
<value type="bool" key="Analyzer.QmlProfiler.FlushEnabled">false</value>
<value type="uint" key="Analyzer.QmlProfiler.FlushInterval">1000</value>
<value type="QString" key="Analyzer.QmlProfiler.LastTraceFile"></value>
<value type="bool" key="Analyzer.QmlProfiler.Settings.UseGlobalSettings">true</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/> <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value> <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value> <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
@@ -227,13 +231,14 @@
<value type="int" key="PE.EnvironmentAspect.Base">2</value> <value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/> <valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">casinocoin-qt-windows</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">casinocoin-qt-windows</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">casinocoin-qt-windows2</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/a.jochems/Documents/GitHub/casinocoin-issue-13/casinocoin-qt-windows.pro</value> <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/a.jochems/Documents/GitHub/casinocoin-development/casinocoin-qt-windows.pro</value>
<value type="bool" key="QmakeProjectManager.QmakeRunConfiguration.UseLibrarySearchPath">true</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value> <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">casinocoin-qt-windows.pro</value> <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">casinocoin-qt-windows.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value> <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value> <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory.default">C:/Users/a.jochems/Documents/GitHub/casinocoin-development</value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value> <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value> <value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value> <value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>

View File

@@ -0,0 +1 @@
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Binary file not shown.

BIN
contrib/release/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,10 @@
The wallet has been succesfully installed.
Please be aware of the following two requirements.
- This software makes use of OpenSSL libraries. They may not yet be available on your machine. If you encounter issues with Redeeming Prypto codes or showing the Twitter feed on the Info page they are missing. Local laws may prohibit installing them so they are not installed with the wallet. In that case you must install the OpenSSL libraries manually. You can download and install the light version from https://slproweb.com/products/Win32OpenSSL.html
- This software makes use of OpenGL v2 rendering. On older machines or Virtual Machines that do not have recent video drivers this can cause graphics rendering problems. If this is the case you can enable a software renderer. To do so add the following parameter to your environment settings via Control Panel -> System -> Advanced System Settings -> Environment Variables:
Variable: QT_OPENGL_DLL
Value: opengl32sw.dll

3
contrib/release/qt.conf Normal file
View File

@@ -0,0 +1,3 @@
[Paths]
Plugins=.
Qml2Imports=.

Binary file not shown.

View File

@@ -67,13 +67,21 @@ namespace Checkpoints
( 317777, uint256("0x0458c7effe8348b551f47c3d7115c9347f4121749549650d495b88e8d0a9c666")) ( 317777, uint256("0x0458c7effe8348b551f47c3d7115c9347f4121749549650d495b88e8d0a9c666"))
( 347777, uint256("0x9ba10b9cd9b94e903e67da6a1033841a3e66b6a33f09cbaec2146d4f72dbea2d")) ( 347777, uint256("0x9ba10b9cd9b94e903e67da6a1033841a3e66b6a33f09cbaec2146d4f72dbea2d"))
( 377777, uint256("0x6eecff79e07910c69ac5340ad34c74cd95ecdfb0282ac62b30e7ba443114a628")) ( 377777, uint256("0x6eecff79e07910c69ac5340ad34c74cd95ecdfb0282ac62b30e7ba443114a628"))
( 444429, uint256("0x01f8b85612927fd3660e7e036f559770ebb09d896f54abf70d99be2fe1793155")) // last solved checkpoint candidate while updating ( 444429, uint256("0x01f8b85612927fd3660e7e036f559770ebb09d896f54abf70d99be2fe1793155"))
( 750000, uint256("0x4e5e0c5d7ee65cc0cf8cb995ef2c701773026baff189a922d9d51bba21cd8e8f"))
( 1000250, uint256("0x43ae9b7d1fcbe37eeb3dc3460b69a574d13e09cdec7d5da01c32d279a452842a"))
( 1105321, uint256("0xac44589a3914c6ad1e8e1d2d007fd76271abca6e38518e39b131ead11142f29d"))
( 1275800, uint256("0x8d74b3baf71c3f3f31e8d6f8c684d890f65764bded05d67f5d10c3b12ee59c75"))
( 1346290, uint256("0x0711f69754fe7f49b965d90db67f94025c3b89c114b60242513b1634220ce2c7"))
( 1461488, uint256("0xd23bc59328a745a8ed6803fcb7ea9f582dd09470ea24303ab0312ad8d29a5809"))
( 1525492, uint256("0xd315bf68cf03c43ebef827e6db8d5d86a43f261c6e1981a0a5ededa8243a73ce"))
// last solved checkpoint candidate while updating
// (we need to know the debug.log tx= for the last checkpoint) // (we need to know the debug.log tx= for the last checkpoint)
; ;
static const CCheckpointData data = { static const CCheckpointData data = {
&mapCheckpoints, &mapCheckpoints,
1400510546, // * UNIX timestamp of last checkpoint block 1465265319, // * UNIX timestamp of last checkpoint block
661156, // * total number of transactions between genesis and last checkpoint 1923205, // * total number of transactions between genesis and last checkpoint
// (the tx=... number in the SetBestChain debug.log lines) // (the tx=... number in the SetBestChain debug.log lines)
4 // * estimated number of transactions per day after checkpoint 4 // * estimated number of transactions per day after checkpoint
}; };

View File

@@ -6,8 +6,8 @@
// //
// These need to be macros, as version.cpp's and bitcoin-qt.rc's voodoo requires it // These need to be macros, as version.cpp's and bitcoin-qt.rc's voodoo requires it
#define CLIENT_VERSION_MAJOR 2 #define CLIENT_VERSION_MAJOR 3
#define CLIENT_VERSION_MINOR 1 #define CLIENT_VERSION_MINOR 0
#define CLIENT_VERSION_REVISION 0 #define CLIENT_VERSION_REVISION 0
#define CLIENT_VERSION_BUILD 0 #define CLIENT_VERSION_BUILD 0
@@ -16,7 +16,7 @@
// Copyright year (2009-this) // Copyright year (2009-this)
// Todo: update this when changing our copyright comments in the source // Todo: update this when changing our copyright comments in the source
#define COPYRIGHT_YEAR 2015 #define COPYRIGHT_YEAR 2016
// Converts the parameter X to a string after macro replacement on X has been performed. // Converts the parameter X to a string after macro replacement on X has been performed.
// Don't merge these into one macro! // Don't merge these into one macro!

View File

@@ -1109,18 +1109,24 @@ int64 static GetBlockValue(int nHeight, int64 nFees)
} }
// Permantently reduce the number of mined coins to 10 after block 575000 // Permantently reduce the number of mined coins to 10 after block 575000
// Permantently reduce the number of minded coins to 1 after block 1575000
// coin supply at that height = 38577206
// Blocks until max coin supply -> 63000000 - 38577206 = 24422794
// New height for reduction to 0 coins -> 1575000 + 24422794 = 25997794
if(nHeight > 575000){ if(nHeight > 575000){
if(nHeight < 3756000){ if(nHeight < 1575000)
{
nSubsidy = 10 * COIN; nSubsidy = 10 * COIN;
}
else if(nHeight >= 1575000 && nHeight <= 25997794){
nSubsidy = 1 * COIN;
} }
else else
{ {
nSubsidy = 0 * COIN; nSubsidy = 0 * COIN;
} }
} }
// return subsidy + fees
return nSubsidy + nFees; return nSubsidy + nFees;
} }
@@ -1133,12 +1139,12 @@ int64 GetTotalCoinSupply(int nHeight, bool noCheckpoints)
int heights[] = { int heights[] = {
100000, 200000, 300000, 400000, 500000, 100000, 200000, 300000, 400000, 500000,
600000, 700000, 800000, 900000, 1000000, 600000, 700000, 800000, 900000, 1000000,
1100000 1100000, 1200000, 1300000, 1400000, 1500000
}; };
int64 supplies[] = { int64 supplies[] = {
482721500000000, 982721500000000, 1482721500000000, 1982721500000000, 2482721500000000, 482721500000000, 982721500000000, 1482721500000000, 1982721500000000, 2482721500000000,
2882721500000000, 2982721500000000, 3082721500000000, 3182721500000000, 3282721500000000, 2882721500000000, 2982721500000000, 3082721500000000, 3182721500000000, 3282721500000000,
3382721500000000 3382721500000000, 3482721500000000, 3582721500000000, 3682721500000000, 3782721500000000
}; };
if (nHeight>=1 ) { if (nHeight>=1 ) {
int numHeights = (int)(sizeof(heights)/sizeof(heights[0])); int numHeights = (int)(sizeof(heights)/sizeof(heights[0]));
@@ -3494,6 +3500,26 @@ void static ProcessGetData(CNode* pfrom)
} }
} }
bool static CheckValidClientVersion(int clientVersion)
{
// From block 1575000 onwards version must be 80001 (MIN_PEER_PROTO_VERSION)
// Before that version was 70004
if(pindexBest->nHeight >= 1575000)
{
if(clientVersion < MIN_PEER_PROTO_VERSION)
return false;
else
return true;
}
else
{
if(clientVersion < 70004)
return false;
else
return true;
}
}
bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv) bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv)
{ {
RandAddSeedPerfmon(); RandAddSeedPerfmon();
@@ -3505,10 +3531,6 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv)
return true; return true;
} }
if (strCommand == "version") if (strCommand == "version")
{ {
// Each connection can only send one version message // Each connection can only send one version message
@@ -3523,7 +3545,8 @@ bool static ProcessMessage(CNode* pfrom, string strCommand, CDataStream& vRecv)
CAddress addrFrom; CAddress addrFrom;
uint64 nNonce = 1; uint64 nNonce = 1;
vRecv >> pfrom->nVersion >> pfrom->nServices >> nTime >> addrMe; vRecv >> pfrom->nVersion >> pfrom->nServices >> nTime >> addrMe;
if (pfrom->nVersion < MIN_PEER_PROTO_VERSION) // Check version related to blockheight
if(!CheckValidClientVersion(pfrom->nVersion))
{ {
// disconnect from peers older than this proto version // disconnect from peers older than this proto version
printf("partner %s using obsolete version %i; disconnecting\n", pfrom->addr.ToString().c_str(), pfrom->nVersion); printf("partner %s using obsolete version %i; disconnecting\n", pfrom->addr.ToString().c_str(), pfrom->nVersion);

View File

@@ -4,11 +4,6 @@
# Makefile for the MinGW g++ compiler/toolchain # Makefile for the MinGW g++ compiler/toolchain
# #
# Assumes Berkeley DB, Boost, and OpenSSL have all been compiled and installed
# into /usr/local (/usr/local/include, /usr/local/lib).
#
# If dependencies are somewhere else, run 'make DEPSDIR=/path/'
#
# Boost libraries are given wacky names that include the particular version of # Boost libraries are given wacky names that include the particular version of
# boost you're using; set BOOST_SUFFIX appropriately. # boost you're using; set BOOST_SUFFIX appropriately.
# #
@@ -20,38 +15,37 @@ CXX ?= g++
USE_UPNP:=- USE_UPNP:=-
USE_IPV6:=1 USE_IPV6:=1
DEPSDIR?=/usr/local BOOST_SUFFIX?=-mt
BOOST_SUFFIX?=-mgw49-mt-s-1_55
INCLUDEPATHS= \ INCLUDEPATHS= \
-I"$(CURDIR)" \ -I"$(CURDIR)" \
-I"C:\deps\boost_1_55_0" \ -I"C:/msys64/usr/src/deps32/boost_1_60_0" \
-I"C:\deps\db-4.8.30.NC\build_unix" \ -I"C:/msys64/usr/src/deps32/db-4.8.30.NC/build_unix" \
-I"C:\deps\openssl-1.0.2d\include" \ -I"C:/msys64/usr/src/deps32/openssl-1.0.2g/include" \
-I"C:\deps\qrencode-3.4.3" -I"C:/msys64/usr/src/deps32/qrencode-3.4.4"
LIBPATHS= \ LIBPATHS= \
-L"$(CURDIR)/leveldb" \ -L"$(CURDIR)/leveldb" \
-L"C:\deps\boost_1_55_0\stage\lib" \ -L"C:/msys64/usr/src/deps32/boost_1_60_0/stage/lib" \
-L"C:\deps\db-4.8.30.NC\build_unix" \ -L"C:/msys64/usr/src/deps32/db-4.8.30.NC/build_unix" \
-L"C:\deps\openssl-1.0.2d" \ -L"C:/msys64/usr/src/deps32/openssl-1.0.2g" \
-L"C:\deps\qrencode-3.4.3\.libs" -L"C:/msys64/usr/src/deps32/qrencode-3.4.4/.libs"
LIBS= \ LIBS= \
-l leveldb \ -lleveldb \
-l memenv \ -lmemenv \
-l boost_system$(BOOST_SUFFIX) \ -lboost_system$(BOOST_SUFFIX) \
-l boost_filesystem$(BOOST_SUFFIX) \ -lboost_filesystem$(BOOST_SUFFIX) \
-l boost_program_options$(BOOST_SUFFIX) \ -lboost_program_options$(BOOST_SUFFIX) \
-l boost_thread$(BOOST_SUFFIX) \ -lboost_thread$(BOOST_SUFFIX) \
-l boost_chrono$(BOOST_SUFFIX) \ -lboost_chrono$(BOOST_SUFFIX) \
-l db_cxx \ -ldb_cxx \
-l ssl \ -lssl \
-l crypto -lcrypto
DEFS=-D_MT -DWIN32 -D_WINDOWS -DBOOST_THREAD_USE_LIB -DBOOST_SPIRIT_THREADSAFE -DUSE_IPV6 -D__NO_SYSTEM_INCLUDES DEFS=-D_MT -DWIN32 -D_WINDOWS -DBOOST_THREAD_USE_LIB -DBOOST_SPIRIT_THREADSAFE -DUSE_IPV6 -D__NO_SYSTEM_INCLUDES
DEBUGFLAGS=-g DEBUGFLAGS=-g
CFLAGS=-mthreads -O2 -w -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter $(DEBUGFLAGS) $(DEFS) $(INCLUDEPATHS) -static CFLAGS=-mthreads -O2 -std=c++11 -w -Wall -Wextra -Wformat -Wformat-security -Wno-unused-parameter $(DEBUGFLAGS) $(DEFS) $(INCLUDEPATHS) -static
# enable: ASLR, DEP and large address aware # enable: ASLR, DEP and large address aware
LDFLAGS=-Wl,--dynamicbase -Wl,--nxcompat -Wl,--large-address-aware -static LDFLAGS=-Wl,--dynamicbase -Wl,--nxcompat -Wl,--large-address-aware -static
@@ -69,7 +63,7 @@ ifneq (${USE_IPV6}, -)
DEFS += -DUSE_IPV6=$(USE_IPV6) DEFS += -DUSE_IPV6=$(USE_IPV6)
endif endif
LIBS += -l mingwthrd -l kernel32 -l user32 -l gdi32 -l comdlg32 -l winspool -l winmm -l shell32 -l comctl32 -l ole32 -l oleaut32 -l uuid -l rpcrt4 -l advapi32 -l ws2_32 -l mswsock -l shlwapi -l pthread LIBS += -lmingwthrd -lkernel32 -luser32 -lgdi32 -lcomdlg32 -lwinspool -lwinmm -lshell32 -lcomctl32 -lole32 -loleaut32 -luuid -lrpcrt4 -ladvapi32 -lws2_32 -lmswsock -lshlwapi -lpthread
# TODO: make the mingw builds smarter about dependencies, like the linux/osx builds are # TODO: make the mingw builds smarter about dependencies, like the linux/osx builds are
HEADERS = $(wildcard *.h) HEADERS = $(wildcard *.h)

View File

@@ -1192,14 +1192,18 @@ void MapPort(bool)
// The first name is used as information source for addrman. // The first name is used as information source for addrman.
// The second name should resolve to a list of seed addresses. // The second name should resolve to a list of seed addresses.
static const char *strMainNetDNSSeed[][2] = { static const char *strMainNetDNSSeed[][2] = {
{"casinocoin.org seed", "seed.dig0.com"}, {"casinocoin.org seed", "seed1.casinocoin.info"},
{"casinocoin.org seed s", "seed.casinocoin.org"}, {"casinocoin.org seed s", "seed.casinocoin.org"},
{"casinocoin.org seed #1", "seed1.dig0.com"}, {"casinocoin.org seed t", "seed.dig0.com"},
{"casinocoin.org seed #1", "seed2.casinocoin.info"},
{"casinocoin.org seed #1s", "seed1.casinocoin.org"}, {"casinocoin.org seed #1s", "seed1.casinocoin.org"},
{"casinocoin.org seed #2", "seed2.dig0.com"}, {"casinocoin.org seed #1t", "seed1.dig0.com"},
{"casinocoin.org seed #2", "seed3.casinocoin.info"},
{"casinocoin.org seed #2s", "seed2.casinocoin.org"}, {"casinocoin.org seed #2s", "seed2.casinocoin.org"},
{"casinocoin.org seed #3", "seed3.dig0.com"}, {"casinocoin.org seed #2t", "seed2.dig0.com"},
{"casinocoin.org seed #3", "seed4.casinocoin.info"},
{"casinocoin.org seed #3s", "seed3.casinocoin.org"}, {"casinocoin.org seed #3s", "seed3.casinocoin.org"},
{"casinocoin.org seed #4", "seed5.casinocoin.info"},
{NULL, NULL} {NULL, NULL}
}; };

View File

@@ -135,5 +135,11 @@
<file>qtquick_controls/qml/QmlGUIExchangesWindow.qml</file> <file>qtquick_controls/qml/QmlGUIExchangesWindow.qml</file>
<file>qtquick_controls/qml/QmlGUIExchangesListView.qml</file> <file>qtquick_controls/qml/QmlGUIExchangesListView.qml</file>
<file>qtquick_controls/qml/QmlGUIExchangesControl.qml</file> <file>qtquick_controls/qml/QmlGUIExchangesControl.qml</file>
<file>twitter/FlipBar.qml</file>
<file>twitter/TweetDelegate.qml</file>
<file>twitter/tweetsearch.js</file>
<file>twitter/TweetsModel.qml</file>
<file>twitter/CasinocoinTwitterFeed.qml</file>
<file>twitter/resources/anonymous.png</file>
</qresource> </qresource>
</RCC> </RCC>

View File

@@ -16,6 +16,10 @@ QList<Currencies::FiatCurrencyID> Currencies::availableCurrencies()
currencylist.append(CNY); currencylist.append(CNY);
currencylist.append(JPY); currencylist.append(JPY);
currencylist.append(RUB); currencylist.append(RUB);
currencylist.append(CAD);
currencylist.append(GBP);
currencylist.append(AUD);
currencylist.append(NZD);
return currencylist; return currencylist;
} }
@@ -28,6 +32,10 @@ bool Currencies::valid(int currency)
case CNY: case CNY:
case JPY: case JPY:
case RUB: case RUB:
case CAD:
case GBP:
case AUD:
case NZD:
return true; return true;
default: default:
return false; return false;
@@ -43,6 +51,10 @@ QString Currencies::name(int currency)
case CNY: return QString("CNY"); case CNY: return QString("CNY");
case JPY: return QString("JPY"); case JPY: return QString("JPY");
case RUB: return QString("RUB"); case RUB: return QString("RUB");
case CAD: return QString("CAD");
case GBP: return QString("GBP");
case AUD: return QString("AUD");
case NZD: return QString("NZD");
default: return QString("???"); default: return QString("???");
} }
} }
@@ -51,11 +63,15 @@ QString Currencies::description(int currency)
{ {
switch(currency) switch(currency)
{ {
case USD: return QString("US Dollars"); case USD: return QString("US Dollar");
case EUR: return QString("European Euro"); case EUR: return QString("European Euro");
case CNY: return QString("Chinese Yuan"); case CNY: return QString("Chinese Yuan");
case JPY: return QString("Japanese Yen"); case JPY: return QString("Japanese Yen");
case RUB: return QString("Russian Ruble"); case RUB: return QString("Russian Ruble");
case CAD: return QString("Canadian Dollar");
case GBP: return QString("British Pound");
case AUD: return QString("Australian Dollar");
case NZD: return QString("New Zealand Dollar");
default: return QString("???"); default: return QString("???");
} }
} }
@@ -69,6 +85,10 @@ QString Currencies::symbol(int currency)
case CNY: return QString("¥"); case CNY: return QString("¥");
case JPY: return QString("¥"); case JPY: return QString("¥");
case RUB: return QString(""); case RUB: return QString("");
case CAD: return QString("$");
case GBP: return QString("£");
case AUD: return QString("$");
case NZD: return QString("$");
default: return QString("$"); default: return QString("$");
} }
} }

View File

@@ -16,6 +16,10 @@ public:
CNY, CNY,
JPY, JPY,
RUB, RUB,
CAD,
GBP,
AUD,
NZD,
}; };
//! Get list of currencies, for drop-down box //! Get list of currencies, for drop-down box

View File

@@ -35,50 +35,12 @@
<property name="horizontalSpacing"> <property name="horizontalSpacing">
<number>15</number> <number>15</number>
</property> </property>
<item row="1" column="0">
<widget class="QFrame" name="exchangeInfoBox">
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Sunken</enum>
</property>
<layout class="QGridLayout" name="gridLayout_4">
<item row="1" column="0">
<layout class="QVBoxLayout" name="verticalLayoutExchanges"/>
</item>
<item row="0" column="0">
<widget class="QLabel" name="lblExchangesHeader">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(166, 27, 31);</string>
</property>
<property name="text">
<string>Exchanges</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item row="0" column="0"> <item row="0" column="0">
<widget class="QFrame" name="coinInfoBox"> <widget class="QFrame" name="coinInfoBox">
<property name="sizePolicy"> <property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed"> <sizepolicy hsizetype="Minimum" vsizetype="Minimum">
<horstretch>0</horstretch> <horstretch>4</horstretch>
<verstretch>0</verstretch> <verstretch>1</verstretch>
</sizepolicy> </sizepolicy>
</property> </property>
<property name="layoutDirection"> <property name="layoutDirection">
@@ -96,6 +58,12 @@
<layout class="QGridLayout" name="gridLayout_2"> <layout class="QGridLayout" name="gridLayout_2">
<item row="0" column="0"> <item row="0" column="0">
<widget class="QLabel" name="lblInformationHeader"> <widget class="QLabel" name="lblInformationHeader">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="font"> <property name="font">
<font> <font>
<pointsize>10</pointsize> <pointsize>10</pointsize>
@@ -120,19 +88,19 @@
<number>15</number> <number>15</number>
</property> </property>
<property name="verticalSpacing"> <property name="verticalSpacing">
<number>10</number> <number>12</number>
</property> </property>
<property name="leftMargin"> <property name="leftMargin">
<number>10</number> <number>10</number>
</property> </property>
<property name="topMargin"> <property name="topMargin">
<number>10</number> <number>5</number>
</property> </property>
<property name="rightMargin"> <property name="rightMargin">
<number>10</number> <number>10</number>
</property> </property>
<property name="bottomMargin"> <property name="bottomMargin">
<number>10</number> <number>5</number>
</property> </property>
<item row="0" column="0"> <item row="0" column="0">
<widget class="QLabel" name="lblBlockHeight"> <widget class="QLabel" name="lblBlockHeight">
@@ -202,7 +170,7 @@
<string notr="true">-</string> <string notr="true">-</string>
</property> </property>
<property name="wordWrap"> <property name="wordWrap">
<bool>true</bool> <bool>false</bool>
</property> </property>
</widget> </widget>
</item> </item>
@@ -221,306 +189,6 @@
</item> </item>
<item row="2" column="1"> <item row="2" column="1">
<widget class="QLabel" name="txtCoinSupply"> <widget class="QLabel" name="txtCoinSupply">
<property name="palette">
<palette>
<active>
<colorrole role="WindowText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="Button">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="Text">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="ButtonText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="Base">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="Window">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
</active>
<inactive>
<colorrole role="WindowText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="Button">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="Text">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="ButtonText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="Base">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="Window">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
</inactive>
<disabled>
<colorrole role="WindowText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="Button">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="Text">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="ButtonText">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>0</red>
<green>0</green>
<blue>0</blue>
</color>
</brush>
</colorrole>
<colorrole role="Base">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
<colorrole role="Window">
<brush brushstyle="SolidPattern">
<color alpha="255">
<red>255</red>
<green>255</green>
<blue>255</blue>
</color>
</brush>
</colorrole>
</disabled>
</palette>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string notr="true">-</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="lblConnections">
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string>Number of connections</string>
</property>
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QLabel" name="txtConnections">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string notr="true">-</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="5" column="0">
<widget class="QLabel" name="lblDifficulty">
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string>Difficulty</string>
</property>
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
</item>
<item row="5" column="1">
<widget class="QLabel" name="txtDifficulty">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string notr="true">-</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="6" column="0">
<widget class="QLabel" name="lblHashRate">
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string>Network Hashrate</string>
</property>
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
</item>
<item row="6" column="1">
<widget class="QLabel" name="txtHashRate">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string notr="true">-</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="7" column="0">
<widget class="QLabel" name="lblTransactionCount">
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string>Transactions</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="7" column="1">
<widget class="QLabel" name="txtTransactionCount">
<property name="font"> <property name="font">
<font> <font>
<weight>75</weight> <weight>75</weight>
@@ -539,13 +207,33 @@
</widget> </widget>
</item> </item>
<item row="3" column="0"> <item row="3" column="0">
<widget class="QLabel" name="lblCoinValue">
<property name="text">
<string>Coin Value</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QLabel" name="txtCoinValue">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>-</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="lblCoinFiatValue"> <widget class="QLabel" name="lblCoinFiatValue">
<property name="text"> <property name="text">
<string>Coin Fiat Value</string> <string>Coin Fiat Value</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="3" column="1"> <item row="4" column="1">
<widget class="QLabel" name="txtCoinFiatValue"> <widget class="QLabel" name="txtCoinFiatValue">
<property name="font"> <property name="font">
<font> <font>
@@ -558,11 +246,221 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="5" column="0">
<widget class="QLabel" name="lblEstimatedMarketCapital">
<property name="text">
<string>Estimated Marketcapital</string>
</property>
</widget>
</item>
<item row="5" column="1">
<widget class="QLabel" name="txtEstimatedMarketCapital">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>-</string>
</property>
</widget>
</item>
<item row="6" column="0">
<widget class="QLabel" name="lblConnections">
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string>Number of connections</string>
</property>
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
</item>
<item row="6" column="1">
<widget class="QLabel" name="txtConnections">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string notr="true">-</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="7" column="0">
<widget class="QLabel" name="lblDifficulty">
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string>Difficulty</string>
</property>
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
</item>
<item row="7" column="1">
<widget class="QLabel" name="txtDifficulty">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string notr="true">-</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="8" column="0">
<widget class="QLabel" name="lblHashRate">
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string>Network Hashrate</string>
</property>
<property name="wordWrap">
<bool>false</bool>
</property>
</widget>
</item>
<item row="8" column="1">
<widget class="QLabel" name="txtHashRate">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string notr="true">-</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
</layout> </layout>
</item> </item>
</layout> </layout>
</widget> </widget>
</item> </item>
<item row="0" column="1">
<widget class="QFrame" name="twitterFeedBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
<horstretch>3</horstretch>
<verstretch>1</verstretch>
</sizepolicy>
</property>
<property name="layoutDirection">
<enum>Qt::LeftToRight</enum>
</property>
<property name="autoFillBackground">
<bool>false</bool>
</property>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Sunken</enum>
</property>
<layout class="QGridLayout" name="gridLayout_5">
<item row="1" column="0">
<layout class="QVBoxLayout" name="verticalLayoutTwitter"/>
</item>
<item row="0" column="0">
<widget class="QLabel" name="lblTwitterHeader">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(166, 27, 31);</string>
</property>
<property name="text">
<string>Twitter</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item row="1" column="0" colspan="2">
<widget class="QFrame" name="exchangeInfoBox">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>1</verstretch>
</sizepolicy>
</property>
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Sunken</enum>
</property>
<layout class="QGridLayout" name="gridLayout_4">
<item row="1" column="0">
<layout class="QVBoxLayout" name="verticalLayoutExchanges"/>
</item>
<item row="0" column="0">
<widget class="QLabel" name="lblExchangesHeader">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true">color: rgb(166, 27, 31);</string>
</property>
<property name="text">
<string>Exchanges</string>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout> </layout>
</widget> </widget>
<resources/> <resources/>

View File

@@ -242,7 +242,42 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="5" column="0" colspan="2"> <item row="5" column="0">
<widget class="QLabel" name="lblTransactionCount">
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string>Transactions:</string>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="5" column="1">
<widget class="QLabel" name="txtTransactionCount">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="text">
<string notr="true">-</string>
</property>
<property name="alignment">
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item row="6" column="0" colspan="2">
<spacer name="verticalSpacer"> <spacer name="verticalSpacer">
<property name="orientation"> <property name="orientation">
<enum>Qt::Vertical</enum> <enum>Qt::Vertical</enum>

View File

@@ -383,7 +383,8 @@ boost::filesystem::path static GetAutostartDir()
boost::filesystem::path static GetAutostartFilePath() boost::filesystem::path static GetAutostartFilePath()
{ {
return GetAutostartDir() / ""+ COIN_NAME + ".desktop"; std::string filename (""+ COIN_NAME + ".desktop");
return GetAutostartDir() / filename;
} }
bool GetStartOnSystemStartup() bool GetStartOnSystemStartup()

View File

@@ -4,33 +4,32 @@
#include "clientmodel.h" #include "clientmodel.h"
#include "bitcoinrpc.h" #include "bitcoinrpc.h"
#include <QDateTime> #include <QDateTime>
#include <QDebug>
#include "bitcoinunits.h" #include "bitcoinunits.h"
#include "main.h" #include "main.h"
#include "overviewpage.h" #include "overviewpage.h"
#include "qtquick_controls/cpp/guiexchangeswidget.h" #include "qtquick_controls/cpp/guiexchangeswidget.h"
#include "twitter/twitterwidget.h"
using namespace std; using namespace std;
InfoPage::InfoPage(QWidget *parent) : InfoPage::InfoPage(QWidget *parent) :
QDialog(parent), QDialog(parent),
ui(new Ui::InfoPage), ui(new Ui::InfoPage),
exchangesWidget( 0 ) exchangesWidget( 0 ),
twitterWidget( 0 )
{ {
ui->setupUi(this); ui->setupUi(this);
ui->coinInfoBox->setMinimumHeight(250); ui->coinInfoBox->setMinimumHeight(250);
ui->twitterFeedBox->setMinimumHeight(250);
ui->exchangeInfoBox->setMinimumHeight(250); ui->exchangeInfoBox->setMinimumHeight(250);
createTwitterWidget();
createExchangesWidget(); createExchangesWidget();
} }
void InfoPage::setWalletModel(WalletModel *model) void InfoPage::setWalletModel(WalletModel *model)
{ {
this->walletModel = model; this->walletModel = model;
if(model)
{
// subscribe to transaction changes
connect(model, SIGNAL(numTransactionsChanged(int)), this, SLOT(setNumTransactions(int)));
setNumTransactions(model->getNumTransactions());
}
} }
void InfoPage::setClientModel(ClientModel *model) void InfoPage::setClientModel(ClientModel *model)
@@ -57,7 +56,10 @@ void InfoPage::setNumBlocks(int count, int countOfPeers)
// block height changed so update all possible values as well // block height changed so update all possible values as well
if(clientModel) if(clientModel)
{ {
ui->txtLastBlockTime->setText(clientModel->getLastBlockDate().toString()); QDateTime blockTime = clientModel->getLastBlockDate().toTimeSpec(Qt::UTC);
QString formattedBlockTime = blockTime.toString("dd-MM-yyyy HH:mm:ss");
formattedBlockTime.append(" UTC");
ui->txtLastBlockTime->setText(formattedBlockTime);
ui->txtDifficulty->setText(QString::number(GetDifficulty())); ui->txtDifficulty->setText(QString::number(GetDifficulty()));
ui->txtCoinSupply->setText(BitcoinUnits::formatWithUnit(BitcoinUnits::BTC, GetTotalCoinSupply(count, false))); ui->txtCoinSupply->setText(BitcoinUnits::formatWithUnit(BitcoinUnits::BTC, GetTotalCoinSupply(count, false)));
double megaHash = GetNetworkHashRate(-1, count) / 1000000; double megaHash = GetNetworkHashRate(-1, count) / 1000000;
@@ -65,11 +67,6 @@ void InfoPage::setNumBlocks(int count, int countOfPeers)
} }
} }
void InfoPage::setNumTransactions(int count)
{
ui->txtTransactionCount->setText(QString::number(count));
}
double InfoPage::GetNetworkHashRate(int lookup, int height) { double InfoPage::GetNetworkHashRate(int lookup, int height) {
CBlockIndex *pb = pindexBest; CBlockIndex *pb = pindexBest;
@@ -112,6 +109,12 @@ InfoPage::~InfoPage()
delete ui; delete ui;
} }
void InfoPage::createTwitterWidget()
{
twitterWidget = new TwitterWidget( this );
ui->verticalLayoutTwitter->addWidget( twitterWidget->dockQmlToWidget() );
}
void InfoPage::createExchangesWidget() void InfoPage::createExchangesWidget()
{ {
exchangesWidget = new GUIExchangesWidget( this ); exchangesWidget = new GUIExchangesWidget( this );
@@ -119,7 +122,9 @@ void InfoPage::createExchangesWidget()
ui->verticalLayoutExchanges->addWidget( exchangesWidget->dockQmlToWidget() ); ui->verticalLayoutExchanges->addWidget( exchangesWidget->dockQmlToWidget() );
} }
void InfoPage::setCoinFiatValue(QString coinValue) void InfoPage::setCoinValues(QString coinValue, QString coinFiatValue, QString marketCapital)
{ {
ui->txtCoinFiatValue->setText(coinValue); ui->txtCoinValue->setText(coinValue);
ui->txtCoinFiatValue->setText(coinFiatValue);
ui->txtEstimatedMarketCapital->setText(marketCapital);
} }

View File

@@ -6,6 +6,7 @@
class WalletModel; class WalletModel;
class ClientModel; class ClientModel;
class GUIExchangesWidget; class GUIExchangesWidget;
class TwitterWidget;
namespace Ui { namespace Ui {
class InfoPage; class InfoPage;
@@ -20,10 +21,8 @@ public slots:
void setNumConnections(int count); void setNumConnections(int count);
/** Set number of blocks shown in the UI */ /** Set number of blocks shown in the UI */
void setNumBlocks(int count, int countOfPeers); void setNumBlocks(int count, int countOfPeers);
/** Set number of transactions shown in the UI */ /** Set coin values */
void setNumTransactions(int count); void setCoinValues(const QString coinValue, const QString coinFiatValue, const QString marketCapital);
/** Set Fiat coin value */
void setCoinFiatValue(const QString coinValue);
public: public:
explicit InfoPage(QWidget *parent = 0); explicit InfoPage(QWidget *parent = 0);
@@ -36,7 +35,9 @@ private:
WalletModel *walletModel; WalletModel *walletModel;
ClientModel *clientModel; ClientModel *clientModel;
GUIExchangesWidget* exchangesWidget; GUIExchangesWidget* exchangesWidget;
TwitterWidget* twitterWidget;
void createTwitterWidget();
void createExchangesWidget(); void createExchangesWidget();
double GetNetworkHashRate(int lookup, int height); double GetNetworkHashRate(int lookup, int height);
}; };

View File

@@ -219,6 +219,10 @@ void OverviewPage::setWalletModel(WalletModel *model)
// set visibility of adverts widget // set visibility of adverts widget
updateDisplayPromotions(model->getOptionsModel()->getDisplayPromotions()); updateDisplayPromotions(model->getOptionsModel()->getDisplayPromotions());
// subscribe to transaction changes
connect(model, SIGNAL(numTransactionsChanged(int)), this, SLOT(setNumTransactions(int)));
setNumTransactions(model->getNumTransactions());
} }
// update the display unit, to not use the default ("BTC") // update the display unit, to not use the default ("BTC")
@@ -263,6 +267,7 @@ void OverviewPage::updateCoinInfoFromWeb( JsonCoinInfoParser* coinInfoParser )
{ {
qDebug() << "CoinInfo ID: " << coinInfoParser->getCoinInfo().find("ID").value().toDouble(); qDebug() << "CoinInfo ID: " << coinInfoParser->getCoinInfo().find("ID").value().toDouble();
qDebug() << "CoinInfo InfoTime: " <<coinInfoParser->getCoinInfo().find("InfoTime").value().toString(); qDebug() << "CoinInfo InfoTime: " <<coinInfoParser->getCoinInfo().find("InfoTime").value().toString();
qDebug() << "CoinInfo CoinValue: " << QString::number( coinInfoParser->getCoinInfo().find("PriceBTC").value().toDouble(), 'f', 8 );
// save the coin information // save the coin information
coinInformation = coinInfoParser->getCoinInfo(); coinInformation = coinInfoParser->getCoinInfo();
// calculate and set the estimated fiat balance // calculate and set the estimated fiat balance
@@ -277,10 +282,15 @@ void OverviewPage::updateFiatBalance(int currency)
if(!coinInformation.isEmpty()) if(!coinInformation.isEmpty())
{ {
QString conversionCurrency = QString("Price").append(Currencies::name(currency)); QString conversionCurrency = QString("Price").append(Currencies::name(currency));
QString coinValue = QString::number( coinInformation.find("PriceBTC").value().toDouble(), 'f', 8 );
double currencyValue = coinInformation.find(conversionCurrency).value().toDouble(); double currencyValue = coinInformation.find(conversionCurrency).value().toDouble();
double marketCapValue = coinInformation.find("MarketCapital").value().toDouble();
// create formated fiat value
QString formattedFiatValue = Currencies::format(currency, currencyValue, true, 4, false);
// create formatted market capital value
QString formattedMarketCapital = Currencies::format(Currencies::USD, marketCapValue, true, 2, false);
// emit signal for change value // emit signal for change value
QString coinValue = Currencies::format(currency, currencyValue, true, 4, false); emit coinValueChanged(coinValue, formattedFiatValue, formattedMarketCapital);
emit coinFiatValueChanged(coinValue);
// calculate and set fiat balance // calculate and set fiat balance
double fiatBalance = currentBalance * currencyValue; double fiatBalance = currentBalance * currencyValue;
QString fiatBalanceString = Currencies::format(currency,fiatBalance,true, 2, true); QString fiatBalanceString = Currencies::format(currency,fiatBalance,true, 2, true);
@@ -301,6 +311,11 @@ void OverviewPage::updateDisplayPromotions(bool checked)
} }
} }
void OverviewPage::setNumTransactions(int count)
{
ui->txtTransactionCount->setText(QString::number(count));
}
OverviewPage::~OverviewPage() OverviewPage::~OverviewPage()
{ {
delete ui; delete ui;

View File

@@ -36,10 +36,11 @@ public:
public slots: public slots:
void setBalance(qint64 balance, qint64 unconfirmedBalance, qint64 immatureBalance); void setBalance(qint64 balance, qint64 unconfirmedBalance, qint64 immatureBalance);
void setNumTransactions(int count);
signals: signals:
void transactionClicked(const QModelIndex &index); void transactionClicked(const QModelIndex &index);
void coinFiatValueChanged(const QString formattedCoinFiatValue); void coinValueChanged(const QString coinValue, const QString formattedCoinFiatValue, const QString marketCapital);
private: private:
Ui::OverviewPage *ui; Ui::OverviewPage *ui;

View File

@@ -212,7 +212,7 @@ GUIExchangesListView
{ {
id: id_exchangeTimeDescription id: id_exchangeTimeDescription
anchors.left: id_exchangeLastUpdateTime.left anchors.left: id_exchangeLastUpdateTime.left
text: qsTr( "Time:" ) text: qsTr( "Updated:" )
color: GUI20Skin.colorToolbarMainGradientEnd color: GUI20Skin.colorToolbarMainGradientEnd
width: id_exchangeLastUpdateTime.width / 3 width: id_exchangeLastUpdateTime.width / 3
} }
@@ -220,7 +220,7 @@ GUIExchangesListView
{ {
id: id_exchangeTimeValue id: id_exchangeTimeValue
anchors.left: id_exchangeTimeDescription.right anchors.left: id_exchangeTimeDescription.right
text: qsTr( m_lastUpdateTime ) text: m_lastUpdateTime + " UTC"
font.bold: true font.bold: true
color: GUI20Skin.colorTextActive color: GUI20Skin.colorTextActive
} }

View File

@@ -0,0 +1,139 @@
/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the examples of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:BSD$
** You may use this file under the terms of the BSD license as follows:
**
** "Redistribution and use in source and binary forms, with or without
** modification, are permitted provided that the following conditions are
** met:
** * Redistributions of source code must retain the above copyright
** notice, this list of conditions and the following disclaimer.
** * Redistributions in binary form must reproduce the above copyright
** notice, this list of conditions and the following disclaimer in
** the documentation and/or other materials provided with the
** distribution.
** * Neither the name of The Qt Company Ltd nor the names of its
** contributors may be used to endorse or promote products derived
** from this software without specific prior written permission.
**
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.0
import "tweetsearch.js" as Helper
import QtQuick.Controls 1.4
Rectangle {
id: id_TwitterRoot
width: parent ? parent.width : 0
height: parent ? parent.height : 0
color: GUI20Skin.colorFrameBackground
property int inAnimDur: 250
property int counter: 0
property alias isLoading: tweetsModel.isLoading
property var idx
property var ids
Component.onCompleted: ids = new Array()
function idInModel(id)
{
for (var j = 0; j < ids.length; j++)
if (ids[j] === id)
return 1
return 0
}
TweetsModel {
id: tweetsModel
onIsLoaded: {
console.debug("Reload")
idx = new Array()
for (var i = 0; i < tweetsModel.model.count; i++) {
var id = tweetsModel.model.get(i).id
if (!idInModel(id))
idx.push(i)
}
console.debug(idx.length + " new tweets")
id_TwitterRoot.counter = idx.length
}
}
Timer {
id: timer
interval: 500; running: id_TwitterRoot.counter; repeat: true
onTriggered: {
id_TwitterRoot.counter--;
var id = tweetsModel.model.get(idx[id_TwitterRoot.counter]).id;
var item = tweetsModel.model.get(id_TwitterRoot.counter);
if(item.retweeted_status != undefined){
item = item.retweeted_status;
}
mainListView.add( { "statusText": Helper.insertLinks(item.text, item.entities),
"twitterName": item.user.screen_name,
"name" : item.user.name,
"userImage": item.user.profile_image_url,
"source": item.source,
"id": id,
"uri": Helper.insertLinks(item.user.url, item.user.entities),
"published": item.created_at } );
ids.push(id)
}
}
Timer {
id: refreshTwitterFeedTimer
interval: 600000;
running: true;
repeat: true;
onTriggered: tweetsModel.reload()
}
ScrollView {
id: mainScrollView
anchors.fill: id_TwitterRoot
ListView {
id: mainListView
anchors.fill: mainScrollView
delegate: TweetDelegate { }
model: ListModel { id: finalModel }
add: Transition {
NumberAnimation { property: "hm"; from: 0; to: 1.0; duration: 300; easing.type: Easing.OutQuad }
PropertyAction { property: "appear"; value: 250 }
}
onDragEnded: tweetsModel.reload()
function clear() {
ids = new Array()
model.clear()
}
function add(obj) {
model.insert(0, obj)
}
}
}
}

173
src/qt/twitter/FlipBar.qml Normal file
View File

@@ -0,0 +1,173 @@
/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the examples of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:BSD$
** You may use this file under the terms of the BSD license as follows:
**
** "Redistribution and use in source and binary forms, with or without
** modification, are permitted provided that the following conditions are
** met:
** * Redistributions of source code must retain the above copyright
** notice, this list of conditions and the following disclaimer.
** * Redistributions in binary form must reproduce the above copyright
** notice, this list of conditions and the following disclaimer in
** the documentation and/or other materials provided with the
** distribution.
** * Neither the name of The Qt Company Ltd nor the names of its
** contributors may be used to endorse or promote products derived
** from this software without specific prior written permission.
**
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.0
Item {
id: container
property int animDuration: 300
property Item front: Item {}
property Item back: Item {}
property real factor: 0.1 // amount the edges fold in for the 3D effect
property alias delta: effect.delta
property Item cur: frontShown ? front : back
property Item noncur: frontShown ? back : front
function swap() {
var tmp = front;
front = back;
back = tmp;
resync();
}
width: cur.width
height: cur.height
onFrontChanged: resync();
onBackChanged: resync();
function resync() {//TODO: Are the items ever actually visible?
back.parent = container;
front.parent = container;
frontShown ? back.visible = false : front.visible = false;
}
property bool frontShown: true
onFrontShownChanged: {
back.visible = !frontShown
front.visible = frontShown
}
function flipUp(start) {
effect.visible = true;
effect.sourceA = effect.source1
effect.sourceB = effect.source2
if (start == undefined)
start = 1.0;
deltaAnim.from = start;
deltaAnim.to = 0.0
dAnim.start();
frontShown = false;
}
function flipDown(start) {
effect.visible = true;
effect.sourceA = effect.source1
effect.sourceB = effect.source2
if (start == undefined)
start = 0.0;
deltaAnim.from = start;
deltaAnim.to = 1.0
dAnim.start();
frontShown = true;
}
ShaderEffect {
id: effect
width: cur.width
height: cur.height
property real factor: container.factor * width
property real delta: 1.0
mesh: GridMesh { resolution: Qt.size(8,2) }
SequentialAnimation on delta {
id: dAnim
running: false
NumberAnimation {
id: deltaAnim
duration: animDuration//expose anim
}
}
property variant sourceA: source1
property variant sourceB: source1
property variant source1: ShaderEffectSource {
sourceItem: front
hideSource: effect.visible
}
property variant source2: ShaderEffectSource {
sourceItem: back
hideSource: effect.visible
}
fragmentShader: "
uniform lowp float qt_Opacity;
uniform sampler2D sourceA;
uniform sampler2D sourceB;
uniform highp float delta;
varying highp vec2 qt_TexCoord0;
void main() {
highp vec4 tex = vec4(qt_TexCoord0.x, qt_TexCoord0.y * 2.0, qt_TexCoord0.x, (qt_TexCoord0.y-0.5) * 2.0);
highp float shade = clamp(delta*2.0, 0.5, 1.0);
highp vec4 col;
if (qt_TexCoord0.y < 0.5) {
col = texture2D(sourceA, tex.xy) * (shade);
} else {
col = texture2D(sourceB, tex.zw) * (1.5 - shade);
col.w = 1.0;
}
gl_FragColor = col * qt_Opacity;
}
"
property real h: height
vertexShader: "
uniform highp float delta;
uniform highp float factor;
uniform highp float h;
uniform highp mat4 qt_Matrix;
attribute highp vec4 qt_Vertex;
attribute highp vec2 qt_MultiTexCoord0;
varying highp vec2 qt_TexCoord0;
void main() {
highp vec4 pos = qt_Vertex;
if (qt_MultiTexCoord0.y == 0.0)
pos.x += factor * (1. - delta) * (qt_MultiTexCoord0.x * -2.0 + 1.0);
else if (qt_MultiTexCoord0.y == 1.0)
pos.x += factor * (delta) * (qt_MultiTexCoord0.x * -2.0 + 1.0);
else
pos.y = delta * h;
gl_Position = qt_Matrix * pos;
qt_TexCoord0 = qt_MultiTexCoord0;
}"
}
}

View File

@@ -0,0 +1,188 @@
/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the examples of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:BSD$
** You may use this file under the terms of the BSD license as follows:
**
** "Redistribution and use in source and binary forms, with or without
** modification, are permitted provided that the following conditions are
** met:
** * Redistributions of source code must retain the above copyright
** notice, this list of conditions and the following disclaimer.
** * Redistributions in binary form must reproduce the above copyright
** notice, this list of conditions and the following disclaimer in
** the documentation and/or other materials provided with the
** distribution.
** * Neither the name of The Qt Company Ltd nor the names of its
** contributors may be used to endorse or promote products derived
** from this software without specific prior written permission.
**
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.0
import "tweetsearch.js" as Helper
Item {
id: container
property real hm: 1.0
property int appear: -1
property real startRotation: 1
onAppearChanged: {
container.startRotation = 0.5
flipBar.animDuration = appear;
delayedAnim.start();
}
SequentialAnimation {
id: delayedAnim
PauseAnimation { duration: 50 }
ScriptAction { script: flipBar.flipDown(startRotation); }
}
width: parent ? parent.width : 0
height: flipBar.height * hm
FlipBar {
id: flipBar
property bool flipped: false
delta: startRotation
anchors.bottom: parent.bottom
width: container.ListView.view ? container.ListView.view.width : 0
height: Math.max(72, tweet.y + tweet.height + 10)
front: Rectangle {
width: container.ListView.view ? container.ListView.view.width : 0
height: Math.max(72, tweet.y + tweet.height + 10)
Rectangle { color: GUI20Skin.colorToolbarMainGradientEnd; width: parent.width; height: 1 }
Rectangle { color: GUI20Skin.colorToolbarMainGradientEnd; width: parent.width; height: 1; anchors.bottom: parent.bottom }
Image {
id: placeHolder
source: "resources/anonymous.png"
x: 10; y: 9
visible: avatar.status != Image.Ready
}
Image {
id: avatar
source: model.userImage
anchors.fill: placeHolder
MouseArea {
id: mouseArea
anchors.fill: parent
onClicked: {
flipBar.flipUp()
flipBar.flipped = true
}
}
}
Text {
id: name
text: model.name
anchors { left: avatar.right; leftMargin: 10; top: avatar.top; topMargin: -3 }
font.pixelSize: 12
font.bold: true
color: GUI20Skin.colorToolbarMainGradientEnd
linkColor: "blue"
}
Text {
id: tweet
text: model.statusText
anchors { left: avatar.right; leftMargin: 10; top: name.bottom; topMargin: 0; right: parent.right; rightMargin: 10 }
wrapMode: Text.WordWrap
font.pixelSize: 12
font.bold: false
color: "black"
linkColor: "blue"
onLinkActivated: {
var tag = link.split("https://twitter.com/search?q=%23")
var user = link.split("https://twitter.com/")
if (tag[1] != undefined) {
mainListView.positionViewAtBeginning()
mainListView.clear()
mainListView.autoSearch('tag', tag[1])
tweetsModel.from = ""
tweetsModel.phrase = "#" + tag[1]
} else if (user[1] != undefined) {
mainListView.positionViewAtBeginning()
mainListView.clear()
mainListView.autoSearch('user', user[1])
tweetsModel.phrase = ""
tweetsModel.from = user[1]
} else
Qt.openUrlExternally(link)
}
}
}
back: Rectangle {
width: container.ListView.view ? container.ListView.view.width : 0
height: Math.max(72, tweet.y + tweet.height + 10)
color: "#be4a25"
Rectangle { color: "#ff6633"; width: parent.width; height: 1 }
Rectangle { color: "#80341a"; width: parent.width; height: 1; anchors.bottom: parent.bottom }
Image {
id: avatar2
source: model.userImage
anchors.right: parent.right
anchors.rightMargin: 10
y: 9
MouseArea {
anchors.fill: parent
onClicked: {
flipBar.flipDown()
flipBar.flipped = false
}
}
}
Text {
id: username
text: model.twitterName
x: 10; anchors { top: avatar2.top; topMargin: -3 }
font.pixelSize: 12
font.bold: true
color: "black"
linkColor: "blue"
}
Text {
text: model.source + "<br>" + Helper.formatDate(model.published) + "<br>" + model.uri
x: 10; anchors { top: username.bottom; topMargin: 0 }
wrapMode: Text.WordWrap
font.pixelSize: 12
font.bold: false
color: "#ffc2ad"
linkColor: "blue"
onLinkActivated: Qt.openUrlExternally(link);
}
}
}
}

View File

@@ -0,0 +1,126 @@
/****************************************************************************
**
** Copyright (C) 2015 The Qt Company Ltd.
** Contact: http://www.qt.io/licensing/
**
** This file is part of the examples of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:BSD$
** You may use this file under the terms of the BSD license as follows:
**
** "Redistribution and use in source and binary forms, with or without
** modification, are permitted provided that the following conditions are
** met:
** * Redistributions of source code must retain the above copyright
** notice, this list of conditions and the following disclaimer.
** * Redistributions in binary form must reproduce the above copyright
** notice, this list of conditions and the following disclaimer in
** the documentation and/or other materials provided with the
** distribution.
** * Neither the name of The Qt Company Ltd nor the names of its
** contributors may be used to endorse or promote products derived
** from this software without specific prior written permission.
**
**
** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
**
** $QT_END_LICENSE$
**
****************************************************************************/
import QtQuick 2.0
import "tweetsearch.js" as Helper
Item {
id: wrapper
//! [auth tokens]
property string consumerKey : ""
property string consumerSecret : ""
//! [auth tokens]
property string bearerToken : ""
property variant model: tweets
property string from : "CasinocoinNews"
property string phrase : ""
property int status: XMLHttpRequest.UNSENT
property bool isLoading: status === XMLHttpRequest.LOADING
property bool wasLoading: false
signal isLoaded
ListModel { id: tweets }
function encodePhrase(x) { return encodeURIComponent(x); }
function reload() {
tweets.clear()
if (from == "" && phrase == "")
return;
//! [requesting]
var req = new XMLHttpRequest;
req.open("GET", "https://api.twitter.com/1.1/statuses/user_timeline.json?" +
"&count=10&screen_name=" + from);
req.setRequestHeader("Authorization", "Bearer " + bearerToken);
req.onreadystatechange = function() {
status = req.readyState;
if (status === XMLHttpRequest.DONE) {
var objectArray = JSON.parse(req.responseText);
if (objectArray.errors !== undefined)
console.log("Error fetching tweets: " + objectArray.errors[0].message)
else {
for (var key in objectArray) {
var jsonObject = objectArray[key];
tweets.append(jsonObject);
}
}
if (wasLoading == true)
wrapper.isLoaded()
}
wasLoading = (status === XMLHttpRequest.LOADING);
}
req.send();
//! [requesting]
}
onPhraseChanged: reload();
onFromChanged: reload();
Component.onCompleted: {
if (consumerKey === "" || consumerSecret == "") {
bearerToken = encodeURIComponent(Helper.demoToken())
return;
}
var authReq = new XMLHttpRequest;
authReq.open("POST", "https://api.twitter.com/oauth2/token");
authReq.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8");
authReq.setRequestHeader("Authorization", "Basic " + Qt.btoa(consumerKey + ":" + consumerSecret));
authReq.onreadystatechange = function() {
if (authReq.readyState === XMLHttpRequest.DONE) {
var jsonResponse = JSON.parse(authReq.responseText);
if (jsonResponse.errors !== undefined)
console.log("Authentication error: " + jsonResponse.errors[0].message)
else
{
bearerToken = jsonResponse.access_token;
reload();
}
}
}
authReq.send("grant_type=client_credentials");
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,62 @@
.pragma library
function formatDate(date)
{
var da = new Date(date)
return da.toDateString()
}
function demoToken()
{
var a = new Array(22).join('A')
return a + String.fromCharCode(0x44, 0x69, 0x4a, 0x52, 0x51, 0x41, 0x41, 0x41, 0x41,
0x41, 0x41, 0x74, 0x2b, 0x72, 0x6a, 0x6c, 0x2b, 0x71,
0x6d, 0x7a, 0x30, 0x72, 0x63, 0x79, 0x2b, 0x42, 0x62,
0x75, 0x58, 0x42, 0x42, 0x73, 0x72, 0x55, 0x48, 0x47,
0x45, 0x67, 0x3d, 0x71, 0x30, 0x45, 0x4b, 0x32, 0x61,
0x57, 0x71, 0x51, 0x4d, 0x62, 0x31, 0x35, 0x67, 0x43,
0x5a, 0x4e, 0x77, 0x5a, 0x6f, 0x39, 0x79, 0x71, 0x61,
0x65, 0x30, 0x68, 0x70, 0x65, 0x32, 0x46, 0x44, 0x73,
0x53, 0x39, 0x32, 0x57, 0x41, 0x75, 0x30, 0x67)
}
function linkForEntity(entity)
{
return (entity.url ? entity.url :
(entity.screen_name ? 'https://twitter.com/' + entity.screen_name :
'https://twitter.com/search?q=%23' + entity.text))
}
function textForEntity(entity)
{
return (entity.display_url ? entity.display_url :
(entity.screen_name ? entity.screen_name : entity.text))
}
function insertLinks(text, entities)
{
if (typeof text !== 'string')
return "";
if (!entities)
return text;
// Add all links (urls, usernames and hashtags) to an array and sort them in
// descending order of appearance in text
var links = []
if (entities.urls)
links = entities.urls.concat(entities.hashtags, entities.user_mentions)
else if (entities.url)
links = entities.url.urls
links.sort(function(a, b) { return b.indices[0] - a.indices[0] })
for (var i = 0; i < links.length; i++) {
var offset = links[i].url ? 0 : 1
text = text.substring(0, links[i].indices[0] + offset) +
'<a href=\"' + linkForEntity(links[i]) + '\">' +
textForEntity(links[i]) + '</a>' +
text.substring(links[i].indices[1])
}
return text.replace(/\n/g, '<br>');
}

View File

@@ -0,0 +1,40 @@
#include "twitterwidget.h"
#include <QHBoxLayout>
#include <QCheckBox>
#include <QQuickView>
#include <QQmlContext>
#include "gui20_skin.h"
TwitterWidget::TwitterWidget(QWidget *parent)
: QWidget(parent)
{
}
TwitterWidget::~TwitterWidget()
{
// member objects are moved to qml engine and it manages their instances
}
QWidget* TwitterWidget::dockQmlToWidget()
{
QQuickView* pTwitterWindow = new QQuickView;
QWidget* pPlaceHolder = 0;
if ( pTwitterWindow )
{
QQmlContext* pContext = pTwitterWindow->rootContext();
if ( pContext )
{
pContext->setContextProperty( "GUI20Skin", &GUI20Skin::Instance() );
}
pTwitterWindow->setSource( QUrl( QStringLiteral( "qrc:/qml/twitter/CasinocoinTwitterFeed.qml" ) ) );
pPlaceHolder = QWidget::createWindowContainer( pTwitterWindow, this );
if ( pPlaceHolder )
{
pPlaceHolder->setMinimumSize( 300, 150 );
pPlaceHolder->setSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding );
}
}
return pPlaceHolder;
}

View File

@@ -0,0 +1,25 @@
#ifndef TWITTERWIDGET_H
#define TWITTERWIDGET_H
#include <QWidget>
class TwitterWidget : public QWidget
{
Q_OBJECT
public:
TwitterWidget( QWidget *parent = 0) ;
~TwitterWidget();
QWidget* dockQmlToWidget();
public slots:
private:
void registerCustomQmlTypes();
private slots:
};
#endif // TWITTERWIDGET_H

View File

@@ -92,7 +92,7 @@ WalletView::WalletView(QWidget *parent, BitcoinGUI *_gui):
// Clicking on "Export" allows to export the transaction list // Clicking on "Export" allows to export the transaction list
connect(exportButton, SIGNAL(clicked()), transactionView, SLOT(exportClicked())); connect(exportButton, SIGNAL(clicked()), transactionView, SLOT(exportClicked()));
// subscribe to coin value changes // subscribe to coin value changes
connect(overviewPage, SIGNAL(coinFiatValueChanged(const QString)), infoPage, SLOT(setCoinFiatValue(const QString))); connect(overviewPage, SIGNAL(coinValueChanged(const QString, const QString, const QString)), infoPage, SLOT(setCoinValues(const QString, const QString, const QString)));
gotoOverviewPage(); gotoOverviewPage();
} }

View File

@@ -8,7 +8,7 @@
// Name of client reported in the 'version' message. Report the same name // Name of client reported in the 'version' message. Report the same name
// for both bitcoind and bitcoin-qt, to make it harder for attackers to // for both bitcoind and bitcoin-qt, to make it harder for attackers to
// target servers or GUI users specifically. // target servers or GUI users specifically.
const std::string CLIENT_NAME("digishield"); const std::string CLIENT_NAME("LTS-V3");
// Client version number // Client version number
#define CLIENT_VERSION_SUFFIX "" #define CLIENT_VERSION_SUFFIX ""

View File

@@ -29,13 +29,13 @@ static const std::string COIN_NAME_DISPLAY("CasinoCoin");
// network protocol versioning // network protocol versioning
// //
static const int PROTOCOL_VERSION = 70004; static const int PROTOCOL_VERSION = 80001;
// intial proto version, to be increased after version/verack negotiation // intial proto version, to be increased after version/verack negotiation
static const int INIT_PROTO_VERSION = 209; static const int INIT_PROTO_VERSION = 209;
// disconnect from peers older than this proto version // disconnect from peers older than this proto version
static const int MIN_PEER_PROTO_VERSION = 70004; // TODO: Change to 70004 before block 445000 to force new client downloading and therefore doing the actual hard fork static const int MIN_PEER_PROTO_VERSION = 80001; // TODO: Change to 70004 before block 445000 to force new client downloading and therefore doing the actual hard fork
// nTime field added to CAddress, starting with this version; // nTime field added to CAddress, starting with this version;
// if possible, avoid requesting addresses nodes older than this // if possible, avoid requesting addresses nodes older than this

49
windows-inno-script.iss Normal file
View File

@@ -0,0 +1,49 @@
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
#define MyAppName "Casinocoin"
#define MyAppVersion "3.0.0.0"
#define MyAppPublisher "Casinocoin Foundation"
#define MyAppURL "http://www.casinocoin.org"
#define MyAppExeName "casinocoin-qt.exe"
[Setup]
; NOTE: The value of AppId uniquely identifies this application.
; Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{DFC9C26D-B51B-4EB5-A10C-1AA469AA73DA}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName={pf}\{#MyAppName}
DisableProgramGroupPage=yes
LicenseFile=.\contrib\release\DISCLAIMER
InfoAfterFile=.\contrib\release\post-install.txt
OutputBaseFilename={#MyAppName}-{#MyAppVersion}-setup
SetupIconFile=.\contrib\release\favicon.ico
Compression=lzma
SolidCompression=yes
[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
[Files]
Source: "C:\Users\a.jochems\Documents\GitHub\casinocoin-development\release\casinocoin-qt.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "C:\Users\a.jochems\Documents\GitHub\casinocoin-development\release\*"; DestDir: "{app}"; Flags: ignoreversion recursesubdirs createallsubdirs
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
[Icons]
Name: "{commonprograms}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; Tasks: desktopicon
[Run]
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, '&', '&&')}}"; Flags: nowait postinstall skipifsilent