//
/////////////////////////////////////////////////////////////////////
-struct LayoutBox::Private
+class LayoutBox::Private
{
+ /// noncopyable
+ Private(Private const &);
+ void operator=(Private const &);
+public:
Private(LayoutBox * parent, GuiView & gv) : p(parent), owner_(gv),
+ inset_(0),
// set the layout model with two columns
// 1st: translated layout names
// 2nd: raw layout names
layout_->filter();
for (int i = 0; i < f.length(); ++i) {
int p = s.indexOf(f[i], lastp + 1, Qt::CaseInsensitive);
- LASSERT(p != -1, /**/);
+ LASSERT(p != -1, continue);
if (lastp == p - 1 && lastp != -1) {
// remove ")" and append "x)"
r = r.left(r.length() - 4) + s[p] + "</u>";
void LayoutBox::Private::setFilter(QString const & s)
{
+ // exit early if nothing has to be done
+ if (filter_ == s)
+ return;
+
bool enabled = p->view()->updatesEnabled();
p->view()->setUpdatesEnabled(false);
// We do not call our implementation of showPopup because that
// would reset the filter again. This is only needed if the user clicks
// on the QComboBox.
- LASSERT(!inShowPopup_, /**/);
+ LATTEST(!inShowPopup_);
inShowPopup_ = true;
p->QComboBox::showPopup();
inShowPopup_ = false;
// call QComboBox::showPopup. But set the inShowPopup_ flag to switch on
// the hack in the item delegate to make space for the headers.
- LASSERT(!d->inShowPopup_, /**/);
+ LATTEST(!d->inShowPopup_);
d->inShowPopup_ = true;
QComboBox::showPopup();
d->inShowPopup_ = false;
void LayoutBox::setIconSize(QSize size)
{
-#ifdef Q_WS_MACX
+#ifdef Q_OS_MAC
bool small = size.height() < 20;
setAttribute(Qt::WA_MacSmallSize, small);
setAttribute(Qt::WA_MacNormalSize, !small);
{
d->resetFilter();
- if (!d->text_class_.get())
+ if (!d->text_class_)
return;
if (!d->text_class_->hasLayout(layout))
bool sorted, bool sortedByCat, bool unknown)
{
QString qitem = toqstr(item);
- // FIXME This is wrong for RTL, I'd suppose.
- QString titem = toqstr(translateIfPossible(item) +
- (unknown ? _(" (unknown)") : from_ascii("")));
+ docstring const loc_item = translateIfPossible(item);
+ QString titem = unknown ? toqstr(bformat(_("%1$s (unknown)"), loc_item))
+ : toqstr(loc_item);
QString qcat = toqstr(translateIfPossible(category));
QList<QStandardItem *> row;
d->model_->itemFromIndex(mindex)->text());
d->owner_.setFocus();
- if (!d->text_class_.get()) {
+ if (!d->text_class_) {
updateContents(false);
d->resetFilter();
return;