Slit coincontrol.h to .h and .cpp files
authorsvost <ya.nowa@yandex.ru>
Thu, 10 Feb 2022 10:36:46 +0000 (13:36 +0300)
committersvost <ya.nowa@yandex.ru>
Thu, 10 Feb 2022 10:36:46 +0000 (13:36 +0300)
CMakeLists.txt
src/CMakeLists.txt
src/coincontrol.cpp [new file with mode: 0644]
src/coincontrol.h

index 7210f2b..3fadffe 100644 (file)
@@ -117,6 +117,7 @@ set(generic_sources
     ${CMAKE_CURRENT_SOURCE_DIR}/src/qt/mintingtablemodel.cpp
     ${CMAKE_CURRENT_SOURCE_DIR}/src/qt/mintingview.cpp
     ${CMAKE_CURRENT_SOURCE_DIR}/src/bignum.cpp
+    ${CMAKE_CURRENT_SOURCE_DIR}/src/coincontrol.cpp
     ${CMAKE_CURRENT_SOURCE_DIR}/src/kernelrecord.cpp
     ${CMAKE_CURRENT_SOURCE_DIR}/src/alert.cpp
     ${CMAKE_CURRENT_SOURCE_DIR}/src/version.cpp
index b21af95..34f4283 100644 (file)
@@ -88,6 +88,7 @@ set(generic_sources
     ${CMAKE_CURRENT_SOURCE_DIR}/bignum.cpp
     ${CMAKE_CURRENT_SOURCE_DIR}/bitcoinrpc.cpp
     ${CMAKE_CURRENT_SOURCE_DIR}/checkpoints.cpp
+    ${CMAKE_CURRENT_SOURCE_DIR}/coincontrol.cpp
     ${CMAKE_CURRENT_SOURCE_DIR}/crypter.cpp
     ${CMAKE_CURRENT_SOURCE_DIR}/db.cpp
     ${CMAKE_CURRENT_SOURCE_DIR}/init.cpp
diff --git a/src/coincontrol.cpp b/src/coincontrol.cpp
new file mode 100644 (file)
index 0000000..04029ed
--- /dev/null
@@ -0,0 +1,44 @@
+#include "coincontrol.h"
+#include "wallet.h"
+
+CCoinControl::CCoinControl()
+{
+    SetNull();
+}
+
+void CCoinControl::SetNull()
+{
+    destChange = CBitcoinAddress();
+    setSelected.clear();
+}
+
+bool CCoinControl::HasSelected() const
+{
+    return (setSelected.size() > 0);
+}
+
+bool CCoinControl::IsSelected(const uint256 &hash, unsigned int n) const
+{
+    COutPoint outpt(hash, n);
+    return (setSelected.count(outpt) > 0);
+}
+
+void CCoinControl::Select(COutPoint &output)
+{
+    setSelected.insert(output);
+}
+
+void CCoinControl::UnSelect(COutPoint &output)
+{
+    setSelected.erase(output);
+}
+
+void CCoinControl::UnSelectAll()
+{
+    setSelected.clear();
+}
+
+void CCoinControl::ListSelected(std::vector<COutPoint> &vOutpoints)
+{
+    vOutpoints.assign(setSelected.begin(), setSelected.end());
+}
index a64a0ec..83f7a54 100644 (file)
@@ -3,53 +3,23 @@
 
 #include "base58.h"
 
+class COutPoint;
+
 /** Coin Control Features. */
 class CCoinControl
 {
 public:
     CBitcoinAddress destChange;
 
-    CCoinControl()
-    {
-        SetNull();
-    }
+    CCoinControl();
         
-    void SetNull()
-    {
-        destChange = CBitcoinAddress();
-        setSelected.clear();
-    }
-    
-    bool HasSelected() const
-    {
-        return (setSelected.size() > 0);
-    }
-    
-    bool IsSelected(const uint256& hash, unsigned int n) const
-    {
-        COutPoint outpt(hash, n);
-        return (setSelected.count(outpt) > 0);
-    }
-    
-    void Select(COutPoint& output)
-    {
-        setSelected.insert(output);
-    }
-    
-    void UnSelect(COutPoint& output)
-    {
-        setSelected.erase(output);
-    }
-    
-    void UnSelectAll()
-    {
-        setSelected.clear();
-    }
-
-    void ListSelected(std::vector<COutPoint>& vOutpoints)
-    {
-        vOutpoints.assign(setSelected.begin(), setSelected.end());
-    }
+    void SetNull();
+    bool HasSelected() const;
+    bool IsSelected(const uint256& hash, unsigned int n) const;
+    void Select(COutPoint& output);
+    void UnSelect(COutPoint& output);
+    void UnSelectAll();
+    void ListSelected(std::vector<COutPoint>& vOutpoints);
         
 private:
     std::set<COutPoint> setSelected;