[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [lmi] master b287dea 3/3: Replace locals with members in p
From: |
Greg Chicares |
Subject: |
[lmi-commits] [lmi] master b287dea 3/3: Replace locals with members in paginator ctor |
Date: |
Mon, 3 Sep 2018 17:39:19 -0400 (EDT) |
branch: master
commit b287dea8ff61d9a0e27423e696cb0d2e3857c4ed
Author: Gregory W. Chicares <address@hidden>
Commit: Gregory W. Chicares <address@hidden>
Replace locals with members in paginator ctor
Not squashed into preceding commit, to simplify review.
---
report_table.cpp | 30 ++++++++++++++++--------------
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/report_table.cpp b/report_table.cpp
index 6cfc220..56cf53a 100644
--- a/report_table.cpp
+++ b/report_table.cpp
@@ -183,37 +183,39 @@ paginator::paginator(int total_rows, int rows_per_group,
int lines_per_page)
,lines_per_page_ {lines_per_page}
,page_count_ {1}
{
- LMI_ASSERT(0 <= total_rows);
- LMI_ASSERT(0 < rows_per_group );
- LMI_ASSERT( rows_per_group <= lines_per_page);
+ LMI_ASSERT(0 <= total_rows_);
+ LMI_ASSERT(0 < rows_per_group_ );
+ LMI_ASSERT( rows_per_group_ <= lines_per_page_);
// If there are zero rows of data, then one empty page is wanted.
- if(0 == total_rows)
+ if(0 == total_rows_)
+ {
+ page_count_ = 1;
return;
+ }
// "+ 1": blank-line separator after each group.
- int const lines_per_group = rows_per_group + 1;
+ int const lines_per_group = rows_per_group_ + 1;
// "+ 1": no blank-line separator after the last group.
- int const groups_per_page = (lines_per_page + 1) / lines_per_group;
+ int const groups_per_page = (lines_per_page_ + 1) / lines_per_group;
- int const rows_per_page = rows_per_group * groups_per_page;
+ int const rows_per_page = rows_per_group_ * groups_per_page;
- int number_of_pages = outward_quotient(total_rows, rows_per_page);
+ page_count_ = outward_quotient(total_rows_, rows_per_page);
// Avoid widowing a partial group on the last page, by moving it
// to the preceding page if there's room.
- if(1 < number_of_pages)
+ if(1 < page_count_)
{
- auto const rows_on_last_page = total_rows - (number_of_pages - 1) *
rows_per_page;
- auto const free_lines = lines_per_page - lines_per_group *
groups_per_page;
- LMI_ASSERT(free_lines < rows_per_group);
+ auto const rows_on_last_page = total_rows_ - (page_count_ - 1) *
rows_per_page;
+ auto const free_lines = lines_per_page_ - lines_per_group *
groups_per_page;
+ LMI_ASSERT(free_lines < rows_per_group_);
if(rows_on_last_page <= free_lines)
{
- --number_of_pages;
+ --page_count_;
}
}
- page_count_ = number_of_pages;
}
/// Number of pages required.