Commit 5d7ca54a authored by chriseth's avatar chriseth Committed by GitHub

Merge pull request #149 from ethereum/exclude-abstract-contracts

Exclude abstract (interface) contracts from the right hand panel
parents aad0b894 798c6443
......@@ -216,6 +216,12 @@
width: 21px;
}
.udapp .contractProperty button:disabled {
cursor: not-allowed;
background-color: white;
border-color: lightgray;
}
.udapp .contractProperty .call {
background-color: #FF8B8B;
border-color: #FF8B8B;
......
......@@ -213,9 +213,24 @@ UniversalDApp.prototype.getCreateInterface = function ($container, contract) {
$close.click(function () { self.$el.remove(); });
$createInterface.append($close);
}
var $newButton = self.getInstanceInterface(contract);
var $atButton = $('<button class="atAddress"/>').text('At Address').click(function () { self.clickContractAt(self, $container.find('.createContract'), contract); });
$createInterface.append($atButton).append($newButton);
$createInterface.append($atButton);
var $newButton = self.getInstanceInterface(contract);
$createInterface.append($newButton);
// Only display creation interface for non-abstract contracts.
// FIXME: maybe have a flag for this in the JSON?
// FIXME: maybe fix getInstanceInterface() below for this case
if (contract.bytecode.length === 0) {
var $createButton = $newButton.find('.constructor .call');
// NOTE: we must show the button to have CSS properly lined up
$createButton.text('Create');
$createButton.attr('disabled', 'disabled');
$createButton.attr('title', 'This contract does not implement all functions and thus cannot be created.');
}
return $createInterface;
};
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment