[GNC-dev] Bug 330930
matthewdavidforbis1982 at yahoo.com
Sun Nov 24 14:45:55 EST 2019
As a foray into fixing bugs, this one looked simple to tackle. Here is the link for easy access: https://bugs.gnucash.org/show_bug.cgi?id=330930
As a summary, when having auto decimal point enabled, certain fields are treated as still having the auto decimal point enabled, such as number of payment periods on the loan assistant. As I looked into this, these dialogs and a few others use a GNCAmountEntry which goes through the expression parser and there is no way to turn off the auto decimal point when setting up the form, so anytime there is a GNCAmountEntry, it forces decimal places into the number. I guess I see a few possible ways to go about fixing it, but I'm not sure which would be considered correct. 1) Pass parameters back up so you can have the GNCAmountEntry tell the expression parser to not do auto decimal point, or 2) Change it to a different type of entry field (such as GTKEntry) that would not parse expressions, but would also not enter in decimal points, or 3) I missed some option somewhere to tell a GNCAmountEntry to ignore the decimal points, but I certianly can't figure it out.
Is there a preference from the core devs as to which would be considered the "correct" way. I also see when researching this, it probably also applies to other places too that use GNCAmountEntry. For instance, the tax table editor has a Percent entry for rate that I wouldn't think makes sense to necessarily add auto decimal places when you are already entering in as a percent and not a decimal.
If someone can provide direction, I'll make an attempt at fix and submit a pull request for review.
More information about the gnucash-devel