jcs
/wifi_da
/amendments
/main.c
Amendments on January 7, 2025
*: Don't rely on our static wifi_da persisting
Lookup str_res_id again when creating main DA window.
*: Revamp scan->menu building, reduce data segment size
We were overflowing wifi_menu_networks in some cases.
Amendments on December 3, 2024
*: Add localization of strings
Prompted by Jean-Michel Durand, this moves all strings into a 'STR#'
resource and based on the system's 'itlb' resource itlbLang value,
we will look for an 'STR#' resource with that ID before falling
back on the default English strings.
This also consolidates the SSID and password entry dialogs and makes
more room for longer strings (looking at you, German).
window: Make clicking on the signal icon toggle
We can't get a separate close event for each window so we don't know
what was supposed to be closed (I guess we could look up the mouse
position). Just make the logger window have goAwayFlag=false and
close it ourselves.
*: Make debug logging permanent, outputting if the logger is open
The logger can now be opened by clicking on the signal icon.
Amendments on September 19, 2024
main: Make debug logging suck much less
ScrollRect the whole window to act like a scrolling TextEdit control
Amendments on October 25, 2023
*: Make some warnings less warny
Users can't do anything about these, there's no point in bothering
them.
Amendments on October 24, 2023
main: Do a periodic scan every 30 seconds to update SSID list
Also some logger tweaks
*: Don't add our own about menu on System 7+, simplify dialog
The DA Handler on System 7+ creates its own "About (DA name)" menu
which draws its own dialog and the only customization we get is to
define a "dast" string which it will draw in the dialog. To avoid
confusion having two about screens, on System 7+ just defer to this
mechanism.
On System 6, continue adding our own "Wi-Fi" menu as expected from a
DA, and then draw our custom about dialog.
Technically there is a way to do this on System 7 by clearing the
menu bar and adding our own Apple/File/Edit menus, but then there's
another problem of a DA can only get events from one menu. To work
around /that/, one must diddle the "MBarEnable" global and then reset
it each time the DA's window becomes deactivated. This becomes kind
of brittle, so don't bother with all of it just for a custom about
screen. MacTech 07.07 explains how to do this.
So for now, only cool System 6 users get to see Carl's sweet face.
jcs made amendment
15
about 1 year ago
Amendments on October 23, 2023
jcs made amendment
13
about 1 year ago
Amendments on October 20, 2023
*: Bugfixes, mask password entry, add debug logger
Properly handle unassociated state switching to associated.
Maintain a separate list of menu networks to be able to redraw the
menu at any time.
Amendments on August 22, 2023
*: Re-import with some System 6 fixes
System 6 doesn't seem to support popupMenuProc, so kind of implement it
ourselves.
Since we're running in a DA we can't access screenBits.bounds, so create
CenterDialog to work around it by creating a new Grafport and checking its
size which will be the same as the screen. I got this tip from a 1988
Usenet post by Rich Siegel.
1