Just reading the original question - and the answer is "anything". A single button, (already suggested) potentionmeter, a small keyboard, a LCD-encoder-menu system, ... it all depends on how complex the variables are that you need to modify, and what sort of (visual) feedback you have on entering a new "value".
Without gettig into code specifics, a single button could be used to step between low, medium, high delay of the valve opening. Either you have to wait until a valve cycle to see if the button push took the desired effect, or you have a LED than blinks something to tell that it has understood the button command. A second button could choose which valve to open close. Many digital clocks use just two buttons to set the clock, switch between display mode, set an alarm and so on - there is a source of inspiration But there are visual cues on where you are in the "state" of what you are changing. A single button can also input 3 "states" by using tricks like short press, long press, double press.
"without disrupting the rest of the code" - presumes that you have written all the other code to be non-blocking and that the input button handler (with whatever visual feedback you decide on) also is non blocking. (A sort of primitive multitask, so to speak)
I've coded such single button tricks in seperate projects. Difficult? Well, not really if you understood how to write nonblocking code (intro: blink without delay)