okular/ui/pagesizelabel.cpp
Albert Astals Cid e0e98658e5 Modify how page size label is shown on the bottom bar
Opened a file with all pages with same size and behaves exactly like Okular does
Opened a file with pages with different sizes and behaves like Okular does until it stops fiting. In that moment the page bar is not centered anymore to let the text still fit and once the text doesn't fit anymore it starts getting ellided.

Reviewed by Luigi

BUGS: 333349
FIXED-IN: 4.13.1
2014-04-15 21:20:32 +02:00

37 lines
1.2 KiB
C++

/***************************************************************************
* Copyright (C) 2006 by Albert Astals Cid <aacid@kde.org> *
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
***************************************************************************/
#include "pagesizelabel.h"
#include "core/document.h"
PageSizeLabel::PageSizeLabel( QWidget * parent, Okular::Document * document )
: KSqueezedTextLabel( parent ), m_document( document )
{
setAlignment( Qt::AlignRight );
}
PageSizeLabel::~PageSizeLabel()
{
m_document->removeObserver( this );
}
void PageSizeLabel::notifyCurrentPageChanged( int previousPage, int currentPage )
{
Q_UNUSED( previousPage )
// if the document is opened
if ( m_document->pages() > 0 && !m_document->allPagesSize().isValid() )
{
setText( m_document->pageSizeString( currentPage ) );
}
}
#include "pagesizelabel.moc"