[bt-devel] Icons and buttons
Eeli Kaikkonen
eekaikko at mail.student.oulu.fi
Tue Apr 7 23:14:08 MST 2009
Quoting Gary Holmlund <gary.holmlund at gmail.com>:
> -------
>
> There are a couple ways of using QDialogButtonBox. One ways is to
> create the buttons (or button texts) yourself and add them to the
> button box, specifying their role.
>
> findButton = new QPushButton(tr("&Find"));
>
> findButton->setDefault(true);
>
> moreButton = new QPushButton(tr("&More"));
>
> moreButton->setCheckable(true);
>
> moreButton->setAutoDefault(false);
>
> buttonBox = new QDialogButtonBox(Qt::Vertical);
>
> buttonBox->addButton(findButton, QDialogButtonBox::ActionRole);
>
> buttonBox->addButton(moreButton, QDialogButtonBox::ActionRole);
>
> -----
> This seems like the best way to do it.
>
I don't remember the different ways I have used QDialogButtonBox, but
I suppose it's easier to do:
b = QDialogButtonBox(QDialogButtonBox::Cancel, QDialogButtonBox::Ok);
util::prepareButtonBox(b);
than to create to buttons manually with tr() and icons. If this kind
of OK/Cancel dialog is used in 5 places, we have to add 10 tr() and 10
icon names. This can be automated by using a helper function which
just finds some standard buttons from the buttonbox and sets new
string and icon. This saves also work of translators 'cause there's
only 1 tr("Cancel") instead of 5. (I would also add a comment to tr()).
Nonstandard or rare button names/icons must be still added manually.
--Eeli Kaikkonen
More information about the bt-devel
mailing list