Currently if somebody wants to do some peer operations (for whatever reason) via the GUI, they have to select 1-by-1 and do them individually. This is just very inefficient when the same operation has to be carried out on multiple peers. It would be nice to be able to select multiple peer at once and e.g. ban them all.

{
    Q_OBJECT
public Q_SLOTS:
    void request(const QString &command);
Q_SIGNALS:
    void reply(int category, const QString &command);
};
/** Class for handling RPC timers
 * (used for e.g. re-locking the wallet after a timeout)
 */
class QtRPCTimerBase: public QObject, public RPCTimerBase
{
    Q_OBJECT
public:
    QtRPCTimerBase(boost::function<void(void)>& _func, int64_t millis):
        func(_func)
    {
        timer.setSingleShot(true);
        connect(&timer, SIGNAL(timeout()), this, SLOT(timeout()));
        timer.start(millis);
    }
    ~QtRPCTimerBase() {}
private Q_SLOTS:
    void timeout() { func(); }
private:
    QTimer timer;
    boost::function<void(void)> func;
};
class QtRPCTimerInterface: public RPCTimerInterface