From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8996 invoked by alias); 5 Aug 2018 22:09:39 -0000 Mailing-List: contact cygwin-apps-help@cygwin.com; run by ezmlm Precedence: bulk Sender: cygwin-apps-owner@cygwin.com List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Mail-Followup-To: cygwin-apps@cygwin.com Received: (qmail 8986 invoked by uid 89); 5 Aug 2018 22:09:38 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-10.7 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_2,GIT_PATCH_3,KAM_LAZY_DOMAIN_SECURITY,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.2 spammy=165, icon, UD:svg, Package X-HELO: rgout03.bt.lon5.cpcloud.co.uk Received: from rgout0305.bt.lon5.cpcloud.co.uk (HELO rgout03.bt.lon5.cpcloud.co.uk) (65.20.0.211) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Sun, 05 Aug 2018 22:09:36 +0000 X-OWM-Source-IP: 86.151.121.200 (GB) X-OWM-Env-Sender: jonturney@btinternet.com X-VadeSecure-score: verdict=clean score=0/300, class=clean X-SNCR-VADESECURE: CLEAN Received: from localhost.localdomain (86.151.121.200) by rgout03.bt.lon5.cpcloud.co.uk (9.0.019.26-1) (authenticated as jonturney@btinternet.com) id 5B4CE16C01FB5932; Sun, 5 Aug 2018 23:09:34 +0100 From: Jon Turney To: cygwin-apps@cygwin.com Cc: Jon Turney Subject: [PATCH setup 00/13] ListView Package Chooser Date: Sun, 05 Aug 2018 22:09:00 -0000 Message-Id: <20180805220851.270212-1-jon.turney@dronecode.org.uk> X-SW-Source: 2018-08/txt/msg00007.txt.bz2 Drag setup into the 1990s, by replacing the custom-drawn package chooser with a ListView common control. As well as removing a lot of Win32 GDI drawing, this also enables the following improvements to be much more straightforward: * Use standard UI elements to choose an action to take on a package or category, rather than the weird UX of clicking to cycle around a list of options of undisclosed length. * Add tooltips (initially, the ldesc as a tooltip for sdesc) * Make the package chooser keyboard accessible (not done yet) The branch for this patch series can be found at: https://github.com/jon-turney/cygwin-setup/tree/listview Jon Turney (13): Change packagemeta::_actions to an enum Add OnNotify virtual function to class Window for WM_NOTIFY notifications Drop 'using namespace std;' from PickView.cc Use a ListView common control rather than a hand-built grid Custom draw checkboxes in ListView control Add methods for listing possible actions on, and applying one to, a package Custom draw popup menus in ListView control Show the count of packages in a category Use an icon to represent expanded/collapsed state Use indents in category view Add LDesc() accessor method to SolvableVersion Restore packagemeta::LDesc() Add ldesc tooltips to sdesc column of listview ActionList.h | 55 +++ ListView.cc | 585 +++++++++++++++++++++++++++++ ListView.h | 96 +++++ Makefile.am | 12 +- PickCategoryLine.cc | 165 +++----- PickCategoryLine.h | 81 ++-- PickLine.h | 47 --- PickPackageLine.cc | 150 ++++---- PickPackageLine.h | 31 +- PickView.cc | 898 ++++++++------------------------------------ PickView.h | 217 ++++++----- check-na.bmp | Bin 106 -> 0 bytes check-no.bmp | Bin 106 -> 0 bytes check-yes.bmp | Bin 106 -> 0 bytes choose-spin.bmp | Bin 106 -> 0 bytes choose.cc | 71 ++-- choose.h | 6 +- libsolv.cc | 14 + libsolv.h | 1 + main.cc | 2 +- package_meta.cc | 155 ++++---- package_meta.h | 38 +- proppage.cc | 14 +- res.rc | 19 +- resource.h | 13 +- tree-minus.bmp | Bin 106 -> 0 bytes tree-minus.ico | Bin 0 -> 299654 bytes tree-minus.svg | 118 ++++++ tree-plus.bmp | Bin 106 -> 0 bytes tree-plus.ico | Bin 0 -> 299671 bytes tree-plus.svg | 126 +++++++ window.h | 7 + 32 files changed, 1608 insertions(+), 1313 deletions(-) create mode 100644 ActionList.h create mode 100644 ListView.cc create mode 100644 ListView.h delete mode 100644 PickLine.h delete mode 100644 check-na.bmp delete mode 100644 check-no.bmp delete mode 100644 check-yes.bmp delete mode 100644 choose-spin.bmp delete mode 100644 tree-minus.bmp create mode 100644 tree-minus.ico create mode 100755 tree-minus.svg delete mode 100644 tree-plus.bmp create mode 100644 tree-plus.ico create mode 100644 tree-plus.svg -- 2.17.0