-void OpenDialog::OnFileBrowse()
-{
- OPENFILENAME ofn;
- static TCHAR szFilter[] = _T("All (*.*)\0*.*\0");
- TCHAR psz_file[PATH_MAX] = _T("\0");
- TCHAR psz_tmp[PATH_MAX+2] = _T("\0");
-
- memset(&ofn, 0, sizeof(OPENFILENAME));
- ofn.lStructSize = sizeof (OPENFILENAME);
- ofn.hwndOwner = NULL;
- ofn.hInstance = hInst;
- ofn.lpstrFilter = szFilter;
- ofn.lpstrCustomFilter = NULL;
- ofn.nMaxCustFilter = 0;
- ofn.nFilterIndex = 1;
- ofn.lpstrFile = psz_file;
- ofn.nMaxFile = PATH_MAX;
- ofn.lpstrFileTitle = NULL;
- ofn.nMaxFileTitle = 40;
- ofn.lpstrInitialDir = NULL;
- ofn.lpstrTitle = _T("Open File");
- ofn.Flags = 0;
- ofn.nFileOffset = 0;
- ofn.nFileExtension = 0;
- ofn.lpstrDefExt = NULL;
- ofn.lCustData = 0L;
- ofn.lpfnHook = NULL;
- ofn.lpTemplateName = NULL;
- if( GetOpenFileName((LPOPENFILENAME) &ofn) )
+static void OnOpenCB( intf_dialog_args_t *p_arg )
+{
+ OpenDialog *p_this = (OpenDialog *)p_arg->p_arg;
+ char psz_tmp[PATH_MAX+2] = "\0";
+
+ if( p_arg->i_results && p_arg->psz_results[0] )