aboutsummaryrefslogtreecommitdiff
path: root/c
AgeCommit message (Collapse)Author
2022-07-18Fix 26bc4109.John Ankarström
Apparently, = {0} does not zero a structure in C++.
2022-07-18Ensure that CBT hook is set and unset correctly.John Ankarström
2022-07-17Prefer f() over f(void).John Ankarström
f(void) is a C-ism that is valid but unnecessary in C++.
2022-07-17Make ListView hWnd public.John Ankarström
A getter offers encapsulation, but it is also less transparent in a sense. Thinking of ListView as a struct, it is natural to expose hWnd as a public member variable.
2022-07-17Update type names and variable prefixes.John Ankarström
2022-07-17Name function arguments in headers.John Ankarström
This is obviously a lot less obtuse.
2022-07-17Add const to pointers, update spacing.John Ankarström
It seems that "right-spaced" pointers are more widely used among C++ programmers.
2022-07-17Add const to places.John Ankarström
Note that I did NOT add const to non-pointer/non-reference arguments in function declarations (without a following definition), as they do not mean anything there.
2022-07-17Remove TsmFromSz.John Ankarström
If needed in the future, it is possible to simply copy it from the Git history.
2022-07-17Use SWI-Prolog's wide-character functions.John Ankarström
This avoids the use of TsmFromSz.
2022-07-16Formatting.John Ankarström
2022-07-16Rewrite TszFromSz as TsmFromSz.John Ankarström
I.e. using std::basic_string<TCHAR> instead of TCHAR *. This removes all unmanaged frees.
2022-07-16Add m_hWndParent to ListView.John Ankarström
This avoids g_hWnd.
2022-07-15Split defs.h into separate header files.John Ankarström
This is feasible now that the makedeps script exists to automatically manage build dependencies (see 6034fe2, d00f8b3).
2022-07-15Add Win32Error exception class.John Ankarström
2022-07-15Show error and exit gracefully on uncaught exception.John Ankarström
2022-07-15Add support for Prolog exceptions.John Ankarström
2022-07-15Use std::optional instead of std::unique_ptr for try_make.John Ankarström
This requires C++17.
2022-07-15Replace Library::Load with try_make_unique template.John Ankarström
2022-07-15Don't crash on Prolog exceptions.John Ankarström
In the future, it may be desirable to convert Prolog exceptions to C++ exceptions.
2022-07-15Reimplement Pl with variadic templatesJohn Ankarström
This is a bit safer and about as complex.
2022-07-15Change declaration style.John Ankarström
2022-07-15Add wrapper for LoadLibrary, FreeLibrary.John Ankarström
2022-07-14Code style.John Ankarström
2022-07-14Pass WM_DESTROY to ListView::WndProc.John Ankarström
On WM_DESTROY, the "this" property was removed before it could be retrieved and dereferenced, making it impossible for WM_DESTROY messages to be passed to the WndProc method.
2022-07-14Prevent rating column from being invisible.John Ankarström
Bug introduced in 26f70ab. DataListView was initialized with g_iDPI set to -1, which is obviously incorrect. The default value of -1 is a remnant of earlier code and is no longer necessary.
2022-07-14Minor formal changes.John Ankarström
Height(DLVSIKEY) was incorrect. The argument to Height is supposed to be a boolean value, in this case false. It happened to work because DLVSIKEY is 0 (because Key is the 0th column in the data list view).
2022-07-14Initialize global variables in the right place.John Ankarström
The rules for what messages are sent at window creation -- and in which order -- are neither intuitive or clear. WM_CREATE can NOT be relied upon to initialize global state required by handlers of other messages (such as WM_GETMINMAXINFO, which seems to be sent before WM_CREATE). Thus, the better solution is to initialize everything using a CBT hook before the window procedure is even run. Because CBTProc creates (child): windows of its own, though, one must be careful to only run the initialization once, which is done by checking g_hWnd.
2022-07-11Improve ElvSort.John Ankarström
2022-07-11Refactor, adjust minimum window size.John Ankarström
2022-07-10Convert to C++.John Ankarström
I already hit upon some object-oriented programming patterns in *listview.c, so I felt that it would be natural to use this as an opportunity to learn C++.
2022-07-10Add IDT_TIMER constant.John Ankarström
2022-06-06Add basic threading support.John Ankarström
It is much easier to implement on the Prolog side than on the C side... :-)
2022-06-02Add Plp, Plg functions.John Ankarström
2022-06-02Fix va_list bug.John Ankarström
2022-06-02Fix typo.John Ankarström
2022-06-02Simplify C interface to Prolog.John Ankarström
2022-05-31Remember focused episode.John Ankarström
Previously, the episode most recently marked as watched would be selected on startup.
2022-05-31Update remaining open_episode call.John Ankarström
2022-05-30Split up Watch into Watch Locally and Watch Online.John Ankarström
2022-05-29Add Wiki context menu option.John Ankarström
It opens the Detective Conan World wiki page for the focused episode.
2022-05-28Remove debug message.John Ankarström
2022-05-28Add option to show/hide other screenwriters.John Ankarström
2022-05-28Add "Fetch Screenwriters" menu item.John Ankarström
This is a separate item from "Fetch", because it takes a lot longer.
2022-04-28Fix selection and update-related bugs.John Ankarström
2022-04-27Press left/right to select next/previous unwatched episode.John Ankarström
2022-04-27Update episode order after rating.John Ankarström
2022-04-25Flip title and rating columns.John Ankarström
2022-04-25Rate from 1 to 10.John Ankarström
2022-04-23Add File > Fetch.John Ankarström