lmi
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [lmi] [lmi-commits] master 4ecd4fe: Print a page number on the dupli


From: Greg Chicares
Subject: Re: [lmi] [lmi-commits] master 4ecd4fe: Print a page number on the duplicate signature page
Date: Tue, 23 Apr 2019 16:29:15 +0000
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1

On 2018-11-28 17:45, Greg Chicares wrote:
> On 2018-11-28 00:24, Vadim Zeitlin wrote:
>> On Tue, 27 Nov 2018 19:12:02 -0500 (EST) Greg Chicares <address@hidden> 
>> wrote:
>> 
>> GC> branch: master
>> GC> commit 4ecd4fe5c5721c1fac41bd72f069008c216a3efc
> 
> [...NAIC illustration reg pagination, N = page count excluding cover page:
>  (A) old XSL-FO: [cover page], 1 of N-1, ... N-1 of N-1, unnumbered attachment
>  (B) yesterday : [cover page], 1 of  N,  ... N-1 of  N , unnumbered attachment
>  (C) today     : [cover page], 1 of  N,  ... N-1 of  N , N of N
[...]
> Ultimately, we'll probably instead want:
> 
>  (D) ultimately: cover page = 1 of N, 2 of N, ... N-1 of N, N of N
>    where N = page count =
>            1 numbered cover page
>        + N-1 other numbered non-duplicate pages
>        +   0 i.e., zero duplicate signature pages

The full original posting is here:
  https://lists.nongnu.org/archive/html/lmi/2018-11/msg00045.html

We want to implement (D) now--but to exclude the 'mce_finra' ledger type
because it would require a regulatory filing.

I've done some work toward this end on new branch 'odd/foliation', and
would like to ask several questions about it:

Why is 'using base_class::base_class' required? Is this just a modern
way of "inheriting" the signature of the ctor?

Given:
  class A {public: virtual void foo();};
  class B : public A {};
  class C : public B {public: void foo() override;};
If the implementation of C::foo() requires calling the base foo(),
should it invoke
 - A::foo(), which can readily be found; or
 - B::foo(), which doesn't exist--on the theory that if B::foo() is
   ever implemented, then C::foo() should most likely call it?
Or would it be better to refactor this as

  class A {
    protected: virtual void do_foo(); // overridable part
    public: void foo() // not virtual
      {
      // code that must be done first
      do_foo(); // call virtual
      // code that must be done last
      }

?

Should cover_page derive from standard_page rather than numbered_page,
in the hope that numbered_page::get_extra_pages_needed() will DTRT for
the cover page?

Is there any reasonable way to make the big rectangle on the cover page
adapt to the height of any footers we might add there? (If that's not
easy, then we might ask whether that rectangle is truly worthwhile.)

Is the {last_page_number_, start_numbering()} mechanism worth keeping?

In order to implement (D) for all ledger types except one, is there
any simpler way than retaining the original class under a new name
such as 'cover_page_legacy', with inline comments describing how to
remove it when we implement (D) for 'mce_finra' as well (as is bound
to happen later this year)?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]