Browse Source

Move JS setup code up into lib macro.

Remove a few redundant messages from build.
cl-refactor
Gav Wood 11 years ago
parent
commit
e4257ee378
  1. 19
      alethzero/MainWin.cpp
  2. 2
      libethcore/CMakeLists.txt
  3. 2
      libethential/CMakeLists.txt
  4. 2
      libethereum/CMakeLists.txt
  5. 2
      libevm/CMakeLists.txt
  6. 2
      libevmface/CMakeLists.txt
  7. 2
      liblll/CMakeLists.txt
  8. 2
      libpyserpent/CMakeLists.txt
  9. 20
      libqethereum/QEthereum.h
  10. 2
      libserpent/CMakeLists.txt

19
alethzero/MainWin.cpp

@ -157,24 +157,7 @@ Main::Main(QWidget *parent) :
f->disconnect(SIGNAL(javaScriptWindowObjectCleared()));
eth->setup(f);
f->addToJavaScriptWindowObject("env", this, QWebFrame::QtOwnership);
connect(f, &QWebFrame::javaScriptWindowObjectCleared, [f, eth, this]()
{
f->disconnect();
f->addToJavaScriptWindowObject("env", this, QWebFrame::QtOwnership);
f->addToJavaScriptWindowObject("eth", eth, QWebFrame::ScriptOwnership);
f->evaluateJavaScript("eth.watch = function(a, s, f) { eth.changed.connect(f ? f : s) }");
f->evaluateJavaScript("eth.newBlock = function(f) { eth.changed.connect(f) }");
f->evaluateJavaScript("eth.create = function(s, v, c, g, p, f) { var v = eth.doCreate(s, v, c, g, p); if (f) f(v) }");
f->evaluateJavaScript("eth.transact = function(s, v, t, d, g, p, f) { eth.doTransact(s, v, t, d, g, p); if (f) f() }");
f->evaluateJavaScript("eth.transactions = function(a) { return JSON.parse(eth.getTransactions(JSON.stringify(a))); }");
f->evaluateJavaScript("String.prototype.pad = function(l, r) { return eth.pad(this, l, r) }");
f->evaluateJavaScript("String.prototype.bin = function() { return eth.toBinary(this) }");
f->evaluateJavaScript("String.prototype.unbin = function(l) { return eth.fromBinary(this) }");
f->evaluateJavaScript("String.prototype.unpad = function(l) { return eth.unpad(this) }");
f->evaluateJavaScript("String.prototype.dec = function() { return eth.toDecimal(this) }");
f->evaluateJavaScript("String.prototype.sha3 = function() { return eth.sha3(this) }");
});
connect(f, &QWebFrame::javaScriptWindowObjectCleared, QETH_INSTALL_JS_NAMESPACE);
});
connect(ui->webView, &QWebView::loadFinished, [=]()

2
libethcore/CMakeLists.txt

@ -54,8 +54,6 @@ else ()
target_link_libraries(${EXECUTABLE} ${CMAKE_THREAD_LIBS_INIT})
endif ()
message("Installation path: ${CMAKE_INSTALL_PREFIX}")
install( TARGETS ${EXECUTABLE} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib )
install( FILES ${HEADERS} DESTINATION include/${EXECUTABLE} )

2
libethential/CMakeLists.txt

@ -46,8 +46,6 @@ else ()
target_link_libraries(${EXECUTABLE} ${CMAKE_THREAD_LIBS_INIT})
endif ()
message("Installation path: ${CMAKE_INSTALL_PREFIX}")
install( TARGETS ${EXECUTABLE} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib )
install( FILES ${HEADERS} DESTINATION include/${EXECUTABLE} )

2
libethereum/CMakeLists.txt

@ -57,8 +57,6 @@ else ()
target_link_libraries(${EXECUTABLE} ${CMAKE_THREAD_LIBS_INIT})
endif ()
message("Installation path: ${CMAKE_INSTALL_PREFIX}")
install( TARGETS ${EXECUTABLE} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib )
install( FILES ${HEADERS} DESTINATION include/${EXECUTABLE} )

2
libevm/CMakeLists.txt

@ -57,8 +57,6 @@ else ()
target_link_libraries(${EXECUTABLE} ${CMAKE_THREAD_LIBS_INIT})
endif ()
message("Installation path: ${CMAKE_INSTALL_PREFIX}")
install( TARGETS ${EXECUTABLE} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib )
install( FILES ${HEADERS} DESTINATION include/${EXECUTABLE} )

2
libevmface/CMakeLists.txt

@ -38,8 +38,6 @@ else ()
target_link_libraries(${EXECUTABLE} ${CMAKE_THREAD_LIBS_INIT})
endif ()
message("Installation path: ${CMAKE_INSTALL_PREFIX}")
install( TARGETS ${EXECUTABLE} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib )
install( FILES ${HEADERS} DESTINATION include/${EXECUTABLE} )

2
liblll/CMakeLists.txt

@ -45,8 +45,6 @@ else ()
target_link_libraries(${EXECUTABLE} ${CMAKE_THREAD_LIBS_INIT})
endif ()
message("Installation path: ${CMAKE_INSTALL_PREFIX}")
install( TARGETS ${EXECUTABLE} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib )
install( FILES ${HEADERS} DESTINATION include/${EXECUTABLE} )

2
libpyserpent/CMakeLists.txt

@ -44,8 +44,6 @@ else ()
target_link_libraries(${EXECUTABLE} ${CMAKE_THREAD_LIBS_INIT})
endif ()
message("Installation path: ${CMAKE_INSTALL_PREFIX}")
install( TARGETS ${EXECUTABLE} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib )
install( FILES ${HEADERS} DESTINATION include/${EXECUTABLE} )

20
libqethereum/QEthereum.h

@ -449,3 +449,23 @@ private:
eth::Client* m_client;
QList<eth::KeyPair> m_accounts;
};
#define QETH_INSTALL_JS_NAMESPACE [f, eth, this]() \
{ \
f->disconnect(); \
f->addToJavaScriptWindowObject("env", this, QWebFrame::QtOwnership); \
f->addToJavaScriptWindowObject("eth", eth, QWebFrame::ScriptOwnership); \
f->evaluateJavaScript("eth.watch = function(a, s, f) { eth.changed.connect(f ? f : s) }"); \
f->evaluateJavaScript("eth.newBlock = function(f) { eth.changed.connect(f) }"); \
\
f->evaluateJavaScript("eth.create = function(s, v, c, g, p, f) { var v = eth.doCreate(s, v, c, g, p); if (f) f(v) }"); \
f->evaluateJavaScript("eth.transact = function(s, v, t, d, g, p, f) { eth.doTransact(s, v, t, d, g, p); if (f) f() }"); \
f->evaluateJavaScript("eth.transactions = function(a) { return JSON.parse(eth.getTransactions(JSON.stringify(a))); }"); \
f->evaluateJavaScript("String.prototype.pad = function(l, r) { return eth.pad(this, l, r) }"); \
f->evaluateJavaScript("String.prototype.bin = function() { return eth.toBinary(this) }"); \
f->evaluateJavaScript("String.prototype.unbin = function(l) { return eth.fromBinary(this) }"); \
f->evaluateJavaScript("String.prototype.unpad = function(l) { return eth.unpad(this) }"); \
f->evaluateJavaScript("String.prototype.dec = function() { return eth.toDecimal(this) }"); \
f->evaluateJavaScript("String.prototype.sha3 = function() { return eth.sha3(this) }"); \
}

2
libserpent/CMakeLists.txt

@ -41,8 +41,6 @@ else ()
target_link_libraries(${EXECUTABLE} ${CMAKE_THREAD_LIBS_INIT})
endif ()
message("Installation path: ${CMAKE_INSTALL_PREFIX}")
install( TARGETS ${EXECUTABLE} ARCHIVE DESTINATION lib LIBRARY DESTINATION lib )
install( FILES ${HEADERS} DESTINATION include/${EXECUTABLE} )
#install( FILES ${CMAKE_CURRENT_BINARY_DIR}/libserpent.so DESTINATION lib )

Loading…
Cancel
Save