An adder doesn't need an input to tell it to add, because that's all it does.
A 4-bit full adder should have
- 4 input signals for each operand, total 8
- A carry-in input signal if you are also using it for subtraction
- 5 output signals, the high-order one may be used to generate an overflow flag
Your decoder is a separate component from all the function generators. You could put a tristate buffer on each function generator to connect them to a common data bus, and then the decoder would generate the tristate enable signals. Otherwise, you probably don't need a decoder, but you might look at a multiplexer (mux) instead.