
This method incorrectly calculates the position of checkboxes in the listbox content area. It uses the formula `new_where.second * item_h + header_visible_px()` to calculate the number of pixels between the top of the viewport and a checkbox. The problem is that when the first visible item is only partially visible, `new_where.second * item_h` produces an excess of pixels equal to the vertical segment of the first visible item that is not in the viewport. This excess value produces a downward displacement of the calculated checkbox position, so it must be accounted for in the aforementioned formula. This problem occurs because at some point, the library switched from scrolling in item-sized increments to smooth scrolling (in older versions, it used to be that it was impossible for an item to be only partially visible). Relevant thread: http://nanapro.org/en-us/forum/index.php?u=/topic/1227/ggnana-listbox-with-a-check-box-for-each-list-item#post-3359
Nana C++ Library
Linux (gcc 5.4.0 and 4.9.2) including (nana-demos)
Windows (Microsoft (R) Build Engine version 14.0.24720.0)
Nana is a C++ library designed to allow developers to easily create cross-platform GUI applications with modern C++11 style. Currently it can work on Linux(X11) and Windows. The nana repository contains the entire source of the library. You can browse the source code and submit your pull request for contributing.
License
Nana is licensed under the Boost Software License
Members
Jinhao, Ariel Viña Rodríguez.
Support
The best way to get help with Nana library is by visiting http://nanapro.org/help.htm
Sending a Pull Request ?
This project encourage you to contribute through sending a pull request! There is a simple rule: please don't directly commit your contributions to the master branch. According to your commits, please choose the hotfixes branch or the develop branch. Thank you!
Introduction to the Repository
There are two main branches with an infinite lifetime:
- master is the main branch and it is marked as every version release.
- develop is also another main branch where the source code reflects a state with the lastest delivered developement changes for the next release.
Other branches:
- features are used to develop new features for the upcoming or a distant future release. Feature branches are named as 'feature-FEATURENAME'.
- hotfix is meant to prepare for a new release, and fixes some bugs from the corresponding tag on the master branch.