内部ロジックにGUIをいろいろと考慮したメンバ関数を持たせるのは美しくない。
内部ロジックには値を得るためのクラスのインスタンスを渡す関数だけ追加して、
GUIとの調整はそのクラスでやるようにすればいい。
つーか
> 引数にパラメータ番号をとり、それに応じた返り値を渡すようにするか
これこそ「機能追加でパラメータが変化」するたびにif文で切り分けたり
関数テーブルで飛ぶような読みにくいソースを弄ることになると思うんだが。