MCPcopy Create free account
hub / github.com/JHRobotics/softgpu / settingsReadback

Function settingsReadback

settings.c:177–234  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

175}
176
177void settingsReadback(HWND hwnd)
178{
179 settings_item_t *item;
180
181 for(item = &settings_cur[0]; item->menu != 0; item++)
182 {
183 DWORD value;
184 HWND hItem = GetDlgItem(hwnd, item->menu);
185 if(hItem)
186 {
187 switch(item->type)
188 {
189 case T_RADIO:
190 value = IsDlgButtonChecked(hwnd, item->menu) ? 1 : 0;
191 if(value > 0)
192 {
193 settingClearGroup(item->group);
194 item->dvalue = value;
195 }
196 break;
197 case T_CHECKBOX:
198 value = IsDlgButtonChecked(hwnd, item->menu) ? 1 : 0;
199 item->dvalue = value;
200 break;
201 case T_INPUT_NUM:
202 {
203 char inp[64];
204 if(GetWindowTextA(hItem, inp, 64) != 0)
205 {
206 item->dvalue = strtol(inp, NULL, 0);
207 }
208 break;
209 }
210 case T_INPUT_STR:
211 {
212 if(item->svalue_freeptr != NULL)
213 {
214 free(item->svalue_freeptr);
215 item->svalue_freeptr = NULL;
216 item->svalue = NULL;
217 }
218
219 size_t s = GetWindowTextLengthA(hItem) + 1;
220 item->svalue_freeptr = malloc(s);
221 if(item->svalue_freeptr)
222 {
223 GetWindowTextA(hItem, item->svalue_freeptr, s);
224 item->svalue = item->svalue_freeptr;
225 }
226 break;
227 }
228 case T_DROPDOWN:
229 item->dvalue = SendMessage(hItem, (UINT)CB_GETCURSEL, (WPARAM)0, (LPARAM)0);
230 break;
231 }
232 }
233 }
234}

Callers 1

softgpuWndProcFunction · 0.85

Calls 1

settingClearGroupFunction · 0.85

Tested by

no test coverage detected