Added signature for changeset ba2c8689e8e9 Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
Added tag v0.24-rc2 for changeset fb14e3e7dbb4 Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
contest: print supported contest names in usage Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
xlua: allow looking up contest names Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
xlua: use size_t instead of int to iterate over script_table Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
xlua: sort lua scripts table based on the filename Doing this at build time will allow us to make an assumption about the ordering at runtime. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
xlua: remove dead function prototype This got left over when script_find got renamed to xlua_script_find. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
xlua: CQ-WW-VHF split into CQ-VHF-DIGI & CQ-VHF-SSBCW Instead of a single weekend where one can use any mode, starting in 2025 there are two 1-day contents. The first is SSB/CW/FM-only. The second is digital-only. It looks like they got their own Cabrillo names. So... 1. add aliases for the contest 2. add an error check to startup callback to catch misuse 3. fixup fill-template and qso-load to work with the new names Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
contest: include a trailing \n in startup & fill-template error messages Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
contest: error out if screen is not big enough for full UI This is suboptimal, but it is better than silently doing weird things or failing an assertion while creating one of the windows later on. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
hlog & contest: allow checking for minimum screen size When initializing the screen, check that it is at least as big as the caller wants it to be. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
contest: recent shouldn't draw its own lines We can draw the separators on the root window. This allows us to connect the horizontal line to the mid-screen vertical line correctly. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
hlog & contest: remove unused xcurses helpers They got superseded by the xwin line drawing functions. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
hlog & contest: rename xform.h to xscreen.h The header contains all 3 abstractions - screen, window, and form. Therefore, it makes sense to name the file after the broadest level (the screen). Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
contest: remove unneeded call to recent_refresh Right after the UI is allocated, we enter the main loop which refreshes the recent lists. So, we don't need to pro-actively do it in the allocation code. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
hlog & contest: remove status_refresh This function became a no-op with the recent UI rearchitecture and therefore it isn't needed. Refresh of all windows and forms is automatically driven from the screen refresh. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
hlog & contest: rearchitect ncurses UI abstraction Instead of using raw ncurses for everything except the forms, this commit adds a new API that provides three abstractions: 1. a screen (which contains a root window for simplicity, but that's an implementation detail) 2. 0+ user-allocated windows (windows are associated with the screen) 3. 0+ user-allocated forms (forms are associated with a window) The form are the virtually the same as xform prior to this rearchitecture. There is still a lot of clean up, improve, and functionality to add. However, the code is in a decent enough shape to commit. Finally, this commit converts hlog & contest binaries to this new API. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
common: close broadcasting sockets during udpsvc shutdown We were leaking the sockets. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
rpc: open the rig on allocation This is needed because the recently introduced IC-7610/IC-9700 quirks check requires the rig to be open. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>
rpc: try to get better rig-open errors for serial devices rig_open return codes are useless, so use access(2) to check if the serial device is accessible and if not to get a reason why it isn't. Signed-off-by: Josef 'Jeff' Sipek <jeffpc@josefsipek.net>