Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file removed docs/images/a-deploy-run-deployed-instances.png
Binary file not shown.
Binary file removed docs/images/a-deploy-run-open-instance.png
Binary file not shown.
Binary file removed docs/images/a-jvm-calling-instance.png
Binary file not shown.
Binary file removed docs/images/a-udapp-inputs.png
Binary file not shown.
Binary file removed docs/images/a-udapp-multi-param-man.png
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/udapp/a-deploy-run-open-instance.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/udapp/a-jvm-calling-instance.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/udapp/a-udapp-inputs.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/udapp/a-udapp-multi-param-man.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/udapp/click-caret.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docs/images/udapp/scientific-notation.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 0 additions & 1 deletion docs/plugin_list.md
Original file line number Diff line number Diff line change
Expand Up @@ -398,7 +398,6 @@ Monitor and analyze your smart contracts inside Remix using Sentio.
:class-card: plugin-card sd-border-1 sd-rounded-2
:link-type: url
:link: https://remix.ethereum.org/?#activate=solidityscan
:img-top: images/plugin-list/solidityscan.png

Real-time security analysis of your Solidity smart contracts.

Expand Down
31 changes: 17 additions & 14 deletions docs/udapp.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@

## Interacting with deployed contracts

After a contract is deployed or after it is accessed with AtAddress, the deployed instance will appear in the **Deploy/Unpinned Contracts** section at the bottom of the Deploy & Run panel.
After a contract is deployed or after it is accessed with `AtAddress`, the deployed instance will appear in the **Deploy/Unpinned Contracts** section at the bottom of the Deploy & Run panel.

![](images/a-deploy-run-deployed-instances.png)
![Deployed Instances](images/udapp/a-deploy-run-deployed-instances.png)

The deployed contract's address is visible as are a few other icons - one of which is the **pin** icon.

## Pinned contracts

When a contract is pinned, it will jump up to the **Pinned Contracts** section and Remix will save the contract's address and the ABI (in the .deploys folder of the current Workspace). When Remix is refreshed, the pinned contracts will be loaded into the Pinned Contracts section.
When a contract is pinned, it will jump up to the **Pinned Contracts** section and Remix will save the contract's address and the ABI in the `.deploys` folder of the current Workspace. When Remix is refreshed, the pinned contracts will be loaded into the **Pinned Contracts** section.

### Pinned contracts are chain & Workspace specific

Expand All @@ -20,7 +20,7 @@ Because a pinned contract's address and ABI are stored in a File Explorer Worksp

To see a contract's functions, click the caret on the left side of the panel.

![](images/a-deploy-run-caret.png)
![Click Deployed Contracts caret](images/udapp/click-caret.png)

The functions' buttons can have different colors.

Expand All @@ -30,10 +30,7 @@ The functions' buttons can have different colors.

- Red buttons are for `payable` functions. Clicking a red button will create a new transaction and this transaction can accept a **value** (typically ETH). The amount of value is set in the **Value** field which is under the Gas Limit field.

![](images/a-jvm-calling-instance.png)

See more information about [Solidity
modifiers](https://docs.soliditylang.org/en/latest/cheatsheet.html#modifiers) - in the Solidity docs.
![Calling different function types](images/udapp/a-jvm-calling-instance.png)

## Inputting parameters

Expand All @@ -43,7 +40,7 @@ A function has two views - the collapsed and the expanded view, which is visible
- Numbers and addresses do not need to be wrapped in double quotes.
- Strings do not need to be wrapped.

![](images/a-udapp-inputs.png)
![Inputting Parameters in function calls](images/udapp/a-udapp-inputs.png)

### Inputting parameters in the collapsed view

Expand All @@ -57,19 +54,19 @@ In the example above the "delegate" function has 3 parameters.

Clicking the 'down' caret brings you to the expanded view - where parameters are input one at a time.

![](images/a-udapp-multi-param-man.png)
![](images/udapp/a-udapp-multi-param-man.png)

## Low level interactions

Low level interactions are used to send funds or calldata or funds & calldata to a contract through the **receive()** or **fallback()** function. Typically, you should only need to implement the fallback function if you are following an upgrade or proxy pattern.

The low level interactions section is below the functions in each deployed contract.

![](images/a-deploy-run-open-instance.png)

Please note the following:
![](images/udapp/a-deploy-run-open-instance.png)

- If you are executing a plain Ether transfer to a contract, you need to have the receive() function in your contract. If your contract has been deployed and you want to send it funds, you would input the amount of Ether or Wei etc. (see **A** in graphic below), and then input **NOTHING** in the calldata field of **Low level interactions** (see **B** in graphic) and click the Transact button (see **C** in graphic below).
```{note}
If you are executing a plain Ether transfer to a contract, you need to have the receive() function in your contract. If your contract has been deployed and you want to send it funds, you would input the amount of Ether or Wei etc. (see **A** in graphic below), and then input **NOTHING** in the calldata field of **Low level interactions** (see **B** in graphic) and click the Transact button (see **C** in graphic below).
```

![](images/a-receive-fun.png)

Expand All @@ -81,6 +78,12 @@ Please note the following:

Please see the [solidity docs](https://solidity.readthedocs.io/en/latest/contracts.html#receive-ether-function) for more specifics about using the **fallback** and **receive** functions.

## Scientific Notation in Function Inputs

You can use scientific notation to pass numbers as function argument. For example, instead of inputting 12000000000000000000, you can input 12e18. This works for both arrays and single inputs.

![Scientific Notation](images/udapp/scientific-notation.png)

## Inputting a tuple or struct to a function

To pass a tuple, you need to put in an array [].
Expand Down