From dcb6aa4d6b9a39fa5395a73ed1f29c4d811f5786 Mon Sep 17 00:00:00 2001 From: Stephen Heumann Date: Thu, 18 Apr 2019 23:50:57 -0500 Subject: [PATCH] Make clicking the radio buttons switch focus back to the search line. This means that pressing return will do a new search with the new settings. --- browserevents.c | 11 +++++++++++ browserwindow.c | 6 +++--- netdiskerror.h | 2 +- 3 files changed, 15 insertions(+), 4 deletions(-) diff --git a/browserevents.c b/browserevents.c index 74bb679..82ab576 100644 --- a/browserevents.c +++ b/browserevents.c @@ -27,6 +27,9 @@ /* Task record used for TaskMasterDA */ static WmTaskRec taskRec; +/* Search line control */ +static CtlRecHndl searchLineHandle; + static void HandleEvent(int eventCode, WmTaskRec *taskRec); static boolean DoLEEdit (int editAction); @@ -91,6 +94,13 @@ static void HandleEvent(int eventCode, WmTaskRec *taskRec) { DoMount(); break; + case forIIGSRadio: + case forAnyAppleIIRadio: + if (FindTargetCtl() != searchLineHandle) { + MakeThisCtlTarget(searchLineHandle); + } + break; + case disksList: if (taskRec->what == mouseDownEvt) { if (taskRec->wmClickCount == 2) { @@ -160,5 +170,6 @@ static boolean DoLEEdit (int editAction) { void InitEventState(void) { memset(&taskRec, sizeof(taskRec), 0); + searchLineHandle = GetCtlHandleFromID(window, searchLine); } diff --git a/browserwindow.c b/browserwindow.c index 61241f2..02a796f 100644 --- a/browserwindow.c +++ b/browserwindow.c @@ -103,7 +103,9 @@ void ShowBrowserWindow(void) { sysWindRecord.eventMask = 0xFFFF; //0x03FF; sysWindRecord.memoryID = myUserID; auxWindInfo->NDASysWindPtr = (Ptr)&sysWindRecord; - + + InitEventState(); + disksListHandle = GetCtlHandleFromID(window, disksList); mountButtonHandle = GetCtlHandleFromID(window, mountDiskButton); searchButtonHandle = GetCtlHandleFromID(window, searchButton); @@ -118,8 +120,6 @@ void ShowBrowserWindow(void) { moreResultsSelected = false; - InitEventState(); - diskList = malloc(DISK_LIST_MAX_LENGTH * sizeof(*diskList)); if (diskList == NULL) { CloseWindow(window); diff --git a/netdiskerror.h b/netdiskerror.h index 1db143d..5a4f35c 100644 --- a/netdiskerror.h +++ b/netdiskerror.h @@ -41,7 +41,7 @@ enum NetDiskError { NOT_MULTIPLE_OF_BLOCK_SIZE, NOT_SPECIFIED_IMAGE_TYPE, - /* Errors related to proccessing JSON result in the disk browser */ + /* Errors related to processing JSON result in the disk browser */ JSON_PARSING_ERROR = 900, NOT_EXPECTED_CONTENTS, };