mirror of
https://bitbucket.org/smil3y/kde-extraapps.git
synced 2025-02-25 03:12:53 +00:00
63 lines
1.7 KiB
C++
63 lines
1.7 KiB
C++
// -*- Mode: C++; c-basic-offset: 2; indent-tabs-mode: nil; c-brace-offset: 0; -*-
|
|
//
|
|
// pageNumber.h
|
|
//
|
|
// Part of KVIEWSHELL - A framework for multipage text/gfx viewers
|
|
//
|
|
// (C) 2004 Stefan Kebekus
|
|
// Distributed under the GPL
|
|
|
|
#ifndef PAGENUMBER_H
|
|
#define PAGENUMBER_H
|
|
|
|
#include <QGlobalStatic>
|
|
|
|
|
|
/** \brief Class to represent a page number
|
|
|
|
The class PageNumber is really nothing but an alias for quint16, and
|
|
can be casted to and from quint16. It is used in kviewshell to remind
|
|
the programmer of the convention that page numbers start at '1' (for
|
|
'first page'), and that the value '0' means 'illegal page number' or
|
|
'no page number'. Accordingly, the value '0' is also named
|
|
PageNumber::invalidPage, and there is a trivial method isInvalid()
|
|
that checks if the page number is 0.
|
|
|
|
@author Stefan Kebekus <kebekus@kde.org>
|
|
@version 1.0 0
|
|
*/
|
|
|
|
class PageNumber
|
|
{
|
|
public:
|
|
enum pageNums {
|
|
invalidPage = 0 /*! Invalid page number */
|
|
};
|
|
|
|
/** The default constructor sets the page number to 'invalidPage' */
|
|
PageNumber() {pgNum = invalidPage;}
|
|
|
|
/** \brief Constructor that sets the page number
|
|
|
|
@param num page number that is set initially
|
|
*/
|
|
PageNumber(quint16 num) {pgNum = num;}
|
|
|
|
/** \brief this method implements typecasts from quint16 */
|
|
PageNumber &operator=(const quint16 p) { pgNum = p; return *this; }
|
|
|
|
/** \brief This method implements typecasts to quint16 */
|
|
operator quint16() const { return pgNum; }
|
|
|
|
/** \brief Checks if the page number is invalid
|
|
|
|
@returns true, if pgNum != invalidPage, i.e., does not equal 0
|
|
*/
|
|
bool isValid() const {return (pgNum != invalidPage);}
|
|
|
|
private:
|
|
/** \brief Single number that represents the page number */
|
|
quint16 pgNum;
|
|
};
|
|
|
|
#endif
|