#include <stdlib.h>
#include <windows.h>
#include "widgets.h"
+#include "rawdisk.h"
static struct wgt_window *win;
static struct wgt_widget *lb_instto, *bn_inst, *bn_cancel, *cb_devs, *ck_usbonly;
+static struct rawdisk_device rawdev[64];
+static int num_rawdev;
static void onclick(struct wgt_widget *w);
static void onmodify(struct wgt_widget *w);
int WINAPI WinMain(HINSTANCE hinst, HINSTANCE hprevinst, char *cmdline, int showcmd)
{
- int x, y;
+ int i, x, y;
MSG msg;
- static const char *items[] = {
- "item one",
- "item two",
- "item three"
- };
+ static const char *items[64];
+ if((num_rawdev = rawdisk_detect(rawdev, sizeof rawdev / sizeof *rawdev)) == -1) {
+ return 1;
+ }
+ for(i=0; i<num_rawdev; i++) {
+ items[i] = rawdev[i].name;
+ }
if(!(win = wgt_window("256boss USB stick installer", 400, 300))) {
return 1;
lb_instto = wgt_label(win, "Install to device:", 10, 10);
x = wgt_xpos_after(lb_instto, WGT_AUTO);
- cb_devs = wgt_combo(win, items, sizeof items / sizeof *items, 0,
- x, 10, WGT_AUTO, WGT_AUTO, onmodify);
+ cb_devs = wgt_combo(win, items, num_rawdev, 0, x, 10, WGT_AUTO, WGT_AUTO,
+ onmodify);
y = wgt_ypos_after(cb_devs, 16);
ck_usbonly = wgt_checkbox(win, "only show USB devices", 1, x, y,