コード例 #1
0
ファイル: SpiderAddPageDlg.cpp プロジェクト: naroya/fdm
void CSpiderAddPageDlg::OnUrlChanged()
{
	

	fsURL url;

	if (IR_SUCCESS != url.Crack (m_strUrl))
		return;  

	fsSiteInfo *site = _SitesMgr.FindSite2 (url.GetHostName (), fsNPToSiteValidFor (fsSchemeToNP (url.GetInternetScheme ())));
	if (site)
	{
		if (site->strUser != NULL && m_bAuthChanged == FALSE && *url.GetUserName () == 0)
		{
			CheckDlgButton (IDC_USELOGIN, BST_CHECKED);
			SetDlgItemText (IDC_USER, site->strUser);
			if (site->strPassword)
				SetDlgItemText (IDC_PASSWORD, site->strPassword);
			UpdateEnabled ();
		}

		if (site->pGroup && m_bGroupChanged == FALSE)
		{
			m_wndGroups.SelectGroup (site->pGroup);
			OnChangeGroups();
		}
	}

	BuildOutFolder ();
}
コード例 #2
0
void CCreateTPDownloadDlg::OnCreategroup() 
{
	if (m_wndGroups.CreateNewGroup (m_wndGroups.GetSelectedGroup ()))
	{
		OnChangeGroups ();
	}
}
コード例 #3
0
void CSpiderAddPageDlg::OnUrlChanged()
{
	

	fsURL url;

	if (IR_SUCCESS != url.Crack (m_strUrl))
		return;

	CString strNewUser, strNewPassword;

	strNewUser = url.GetUserName ();
	strNewPassword = url.GetPassword ();

	fsSiteInfo *site = _SitesMgr.FindSite (url.GetHostName (), fsNPToSiteValidFor (fsSchemeToNP (url.GetInternetScheme ())));
	if (site)
	{
		if (!m_bAuthChanged && strNewUser.IsEmpty ())
		{
			if (!site->strUser.IsEmpty ())
			{
				strNewUser = site->strUser;
				if (!site->strPassword.IsEmpty ())
					strNewPassword = site->strPassword;
			}
		}

		if (site->pGroup && m_bGroupChanged == FALSE)
		{
			m_wndGroups.SelectGroup (site->pGroup);
			OnChangeGroups();
			m_bGroupChanged = FALSE;
		}
	}

	if (!m_bAuthChanged)
	{
		CheckDlgButton (IDC_USELOGIN, !strNewUser.IsEmpty () ? BST_CHECKED : BST_UNCHECKED);
		SetDlgItemText (IDC_USER, strNewUser);
		SetDlgItemText (IDC_PASSWORD, strNewPassword);
		m_bAuthChanged = FALSE;
		UpdateEnabled ();
	}

	BuildOutFolder ();
}
コード例 #4
0
ファイル: SpiderAddPageDlg.cpp プロジェクト: naroya/fdm
BOOL CSpiderAddPageDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();

	
	
	m_task.hts.enType = HTS_ONCE;
	m_task.hts.last.dwHighDateTime = m_task.hts.last.dwLowDateTime = UINT_MAX;
	m_task.dwFlags = SCHEDULE_ENABLED;
	SYSTEMTIME time;
	GetLocalTime (&time);
	if (++time.wHour > 23)
		time.wHour = 0;
	time.wMinute = 0;
	SystemTimeToFileTime (&time, &m_task.hts.next);
	m_task.uWaitForConfirmation = 0;

	m_btnChooseFolder.SetIcon (SICO (IDI_CHOOSEFOLDER));
	m_btnCreateGroup.SetIcon (SICO (IDI_CREATEGROUP));
	m_btnSetTime.SetIcon (SICO (IDI_SETTIME));
	m_btnOutFolderSetDefault.SetIcon (SICO (IDI_SETFOLDERDEFAULT));

	m_wndGroups.Fill ();
	m_wndGroups.SelectGroupById (_App.CreateDld_IdOfLastGrpSelected ());

	CheckDlgButton (IDC_KEEP, _App.Spider_Flags () & WPDF_KEEPFOLDERSTRUCTURE ? 
						BST_CHECKED : BST_UNCHECKED);

	CheckDlgButton (IDC_DONTSTOREPAGES, _App.Spider_Flags () & WPDF_DONTSTOREPAGES ? 
						BST_CHECKED : BST_UNCHECKED);

	CheckDlgButton (IDC_DELCOMPLETED, _App.Spider_Flags () & WPDF_DELCOMPLETEDDLDS ?
						BST_CHECKED : BST_UNCHECKED);

	CComboBox *pUrls = (CComboBox*) GetDlgItem (IDC_URL);
	for (int i = 0; i < _LastUrlFiles.GetRecordCount (); i++)
		pUrls->AddString (_LastUrlFiles.GetRecord (i));

	if (m_strStartUrl.GetLength () == 0)
	{
		LPCSTR pszUrl = _ClipbrdMgr.Text ();
		if (pszUrl)
		{
			fsURL url;
			if (url.Crack (pszUrl) == IR_SUCCESS)
				m_strUrl = pszUrl;
		}
		
		if (m_strUrl.GetLength () == 0)
			m_strUrl = "http://";
	}
	else
		m_strUrl = m_strStartUrl;

	pUrls->SetWindowText (m_strUrl);

	CComboBox *pDirs = (CComboBox*) GetDlgItem (IDC_OUTFOLDER);
	for (i = 0; i < _LastFolders.GetRecordCount (); i++)
		pDirs->AddString (_LastFolders.GetRecord (i));

	GetDlgItem (IDC_URL)->SetFocus ();

	m_bOutFolderChanged = m_bGroupChanged = FALSE;

	ReadAutostart ();
	ApplyLanguage ();

	if (m_bReqTopMost)
	{
		fsSetForegroundWindow (m_hWnd);
		::SetWindowPos (m_hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE);
	}

	m_wndDepthSpin.SetRange (0, UD_MAXVAL);
	SetDlgItemInt (IDC_DEPTH, m_wpd->GetWDPS ()->iDepth);

	if (m_wndGroups.SelectGroupById (_App.NewDL_GroupId ()))
		m_bGroupChanged = TRUE;

	OnChangeGroups ();

	BuildOutFolder ();

	UpdateEnabled ();

	return TRUE;  
	              
}
コード例 #5
0
ファイル: SpiderAddPageDlg.cpp プロジェクト: naroya/fdm
void CSpiderAddPageDlg::OnCreategroup() 
{
	if (m_wndGroups.CreateNewGroup (m_wndGroups.GetSelectedGroup ()))
		OnChangeGroups ();
}
コード例 #6
0
ファイル: SpiderAddPageDlg.cpp プロジェクト: naroya/fdm
void CSpiderAddPageDlg::OnSelchangeGroups() 
{
	m_bGroupChanged = TRUE;
	OnChangeGroups ();	
}
コード例 #7
0
ファイル: CreateBatchDownload.cpp プロジェクト: DragonZX/fdm2
BOOL CCreateBatchDownload::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	m_btnChooseFolder.SetIcon (SICO (IDI_CHOOSEFOLDER));
	m_btnCreateGroup.SetIcon (SICO (IDI_CREATEGROUP));
	m_btnSetTime.SetIcon (SICO (IDI_SETTIME));
	m_btnOutFolderSetDefault.SetIcon (SICO (IDI_SETFOLDERDEFAULT));

	
	m_schScheduleParam.schTask.hts.enType = HTS_ONCE;
	m_schScheduleParam.schTask.hts.last.dwHighDateTime = m_schScheduleParam.schTask.hts.last.dwLowDateTime = UINT_MAX;
	SYSTEMTIME time;
	GetLocalTime (&time);
	if (++time.wHour > 23)
		time.wHour = 0;
	time.wMinute = 0;
	SystemTimeToFileTime (&time, &m_schScheduleParam.schTask.hts.next);
	m_schScheduleParam.schTask.uWaitForConfirmation = 0;

	
	LPCSTR pszUrl = _ClipbrdMgr.Text ();
	if (pszUrl && *pszUrl)
	{
		fsURL url;
		if (url.Crack (pszUrl) == IR_SUCCESS)
			m_strUrl = pszUrl;	
	}
	
	if (m_strUrl == "")
		m_strUrl = "http://";	

	CString strUser = _App.UserName ();	
	m_bAuthorization = strUser.GetLength () != 0;
	SetDlgItemText (IDC_USER, strUser);
	SetDlgItemText (IDC_PASSWORD, _App.UserPassword ());

	CheckDlgButton (IDC_USELOGIN, m_bAuthorization ? BST_CHECKED : BST_UNCHECKED);

	
	m_wndGroups.Fill ();

	
	CComboBox *pUrls = (CComboBox*) GetDlgItem (IDC_URL);
	int i = 0;
	for (i = 0; i < _LastBatchUrls.GetRecordCount (); i++)
		pUrls->AddString (_LastBatchUrls.GetRecord (i));

	
	CComboBox *pDirs = (CComboBox*) GetDlgItem (IDC_OUTFOLDER);
	for (i = 0; i < _LastFolders.GetRecordCount (); i++)
		pDirs->AddString (_LastFolders.GetRecord (i));

	CheckRadioButton (IDC_STARTNOW, IDC_STARTSCHEDULE, IDC_STARTNOW);
	m_dld->bAutoStart = TRUE;  

	GetDlgItem (IDC_URL)->SetFocus ();

	if (IR_SUCCESS != m_dld->pMgr->GetDownloadMgr ()->CreateByUrl (m_strUrl, TRUE) && m_strUrl != "http://")
		m_dld->pMgr->GetDownloadMgr ()->CreateByUrl ("http://", TRUE);

	m_bGroupChanged = m_bAuthChanged = FALSE;

	fsURL url;
	if (IR_SUCCESS == url.Crack (m_strUrl) && *url.GetHostName ())
	{
		fsURL u;
		char szUrl [10000];
		DWORD dwLen = 10000;
		u.Create (url.GetInternetScheme (), url.GetHostName (), url.GetPort (), NULL, NULL, url.GetPath (), szUrl, &dwLen);
		m_strUrl = szUrl;	

		if (*url.GetUserName ())
			m_bAuthChanged = TRUE;
	}

	UpdateEnabled ();

	
	Update_User_Password ();

	SetDlgItemText (IDC_URL, m_strUrl == "http://url/" ? "http://" : m_strUrl);
	((CEdit*) GetDlgItem (IDC_URL))->SetSel (0, -1);

	UrlChanged ();

	DWORD dwAtoZ = _App.CreateBD_LastAtoZ ();
	int az1 = LOWORD (dwAtoZ);
	int az2 = HIWORD (dwAtoZ);

	if ((az1 < 0 || az2 >= 'Z' - 'A') ||
			(az2 < 0 || az2 > 'Z' - 'A' - 1)) 
	{
		az1 = 0; az2 = 'Z' - 'A' - 1;
	}

	for (i = 0; i < 'Z' - 'A'; i++)
	{
		CString str = (char)('A' + i);
		m_wndA.AddString (str);
	}
	m_wndA.SetCurSel (az1);
	FillZ ();
	m_wndZ.SetCurSel (az2);

	ReadAutostart ();
	ApplyLanguage ();

	if (m_wndGroups.SelectGroupById (_App.NewDL_GroupId ()))
		m_bGroupChanged = TRUE;

	OnChangeGroups ();

	SetDlgItemText (IDC_NUMBERS, _App.CreateBD_LastNumbers ());

	CString strSaveAs = _App.CreateBD_SaveAs_Template ();
	SetDlgItemText (IDC_SAVEAS, strSaveAs);
	if (strSaveAs == "") {
		CheckDlgButton (IDC_FILEAUTO, BST_CHECKED);
		UpdateEnabled ();
	}

	m_dld->dwFlags |= DLD_BATCH;

	return TRUE;  
	              
}
コード例 #8
0
ファイル: CreateBatchDownload.cpp プロジェクト: DragonZX/fdm2
void CCreateBatchDownload::OnCreategroup() 
{
	if (m_wndGroups.CreateNewGroup (m_wndGroups.GetSelectedGroup ()))
		OnChangeGroups ();
}
コード例 #9
0
ファイル: CreateBatchDownload.cpp プロジェクト: DragonZX/fdm2
void CCreateBatchDownload::UrlChanged()
{
	CHAR szFile [10000];
	*szFile = 0;
	fsURL url;

	m_bBLParametersChanged = true;

	if (IR_SUCCESS != url.Crack (m_strUrl))
		return;

	
	
	if (m_bGroupChanged == FALSE)
	{
		fsFileNameFromUrlPath (url.GetPath (), url.GetInternetScheme () == INTERNET_SCHEME_FTP, 
			TRUE, szFile, sizeof (szFile));

		int len = strlen (szFile);
		vmsDownloadsGroupSmartPtr grp;

		if (len)
		{
			int i;
			for (i = len-1; i > 0; i--)
				if (szFile [i] == '.')	
					break;

			if (i && i < len-1)
			{
				i++;
				CHAR szExt [1000];
				strcpy (szExt, szFile + i);
				grp = _DldsGrps.FindGroupByExt (szExt);
			}
		}

		if (grp == NULL)
			grp = _DldsGrps.FindGroup (GRP_OTHER_ID);

		if (grp != NULL)
		{		
			if (m_wndGroups.SelectGroup (grp))
				OnChangeGroups();
		}

		m_bGroupChanged = FALSE;
	}

	CString strNewUser, strNewPassword;

	strNewUser = url.GetUserName ();
	strNewPassword = url.GetPassword ();

	
	fsSiteInfo *site = _SitesMgr.FindSite (url.GetHostName (), fsNPToSiteValidFor (fsSchemeToNP (url.GetInternetScheme ())));
	if (site)
	{
		if (!m_bAuthChanged && strNewUser.IsEmpty ())
		{
			if (!site->strUser.IsEmpty ())
			{
				strNewUser = site->strUser;
				if (!site->strPassword.IsEmpty ())
					strNewPassword = site->strPassword;
			}
		}		

		
		if (site->pGroup && m_bGroupChanged == FALSE)
		{
			m_wndGroups.SelectGroup (site->pGroup);
			OnChangeGroups();
			m_bGroupChanged = FALSE;
		}
	}
	
	if (!m_bAuthChanged)
	{
		m_bAuthorization = !strNewUser.IsEmpty ();
		CheckDlgButton (IDC_USELOGIN, m_bAuthorization ? BST_CHECKED : BST_UNCHECKED);
		SetDlgItemText (IDC_USER, strNewUser);
		SetDlgItemText (IDC_PASSWORD, strNewPassword);
		m_bAuthChanged = FALSE;
		UpdateEnabled ();
	}
}
コード例 #10
0
ファイル: CreateBatchDownload.cpp プロジェクト: DragonZX/fdm2
void CCreateBatchDownload::OnSelchangeGroups() 
{
	OnChangeGroups ();	
	m_bGroupChanged = TRUE;
}
コード例 #11
0
BOOL CCreateTPDownloadDlg::OnInitDialog() 
{
	

	CDialog::OnInitDialog();

	SetDlgItemText (IDC_URL, m_strUrl);
	CHAR szFile [10000];
	*szFile = 0;
	fsFileNameFromUrlPath (m_strUrl, FALSE, TRUE, szFile, sizeof (szFile));

	m_schScheduleParam.schTask.hts.enType = HTS_ONCE;
	m_schScheduleParam.schTask.hts.last.dwHighDateTime = m_schScheduleParam.schTask.hts.last.dwLowDateTime = UINT_MAX;
	m_schScheduleParam.schTask.dwFlags = SCHEDULE_ENABLED;
	SYSTEMTIME time;
	GetLocalTime (&time);
	if (++time.wHour > 23)
		time.wHour = 0;
	time.wMinute = 0;
	SystemTimeToFileTime (&time, &m_schScheduleParam.schTask.hts.next);
	m_schScheduleParam.schTask.uWaitForConfirmation = 0;

	m_btnChooseFolder.SetIcon (SICO (IDI_CHOOSEFOLDER));
	m_btnCreateGroup.SetIcon (SICO (IDI_CREATEGROUP));
	m_btnOutFolderSetDefault.SetIcon (SICO (IDI_SETFOLDERDEFAULT));

	m_wndGroups.Fill ();

	CComboBox *pUrls = (CComboBox*) GetDlgItem (IDC_URL);
	int i = 0;
	for (i = 0; i < _LastUrlFiles.GetRecordCount (); i++)
		pUrls->AddString (_LastUrlFiles.GetRecord (i));

	CComboBox *pDirs = (CComboBox*) GetDlgItem (IDC_OUTFOLDER);
	for (i = 0; i < _LastFolders.GetRecordCount (); i++)
		pDirs->AddString (_LastFolders.GetRecord (i));

	m_bGroupChanged = m_bAuthChanged = FALSE;

	SetDlgItemInt (IDC_STRSPEED, 1);
	m_wndSpin.SetRange (1, 10);
	
	GetDlgItem (IDC_URL)->SetFocus ();
	UrlChanged ();

	if (strlen(szFile) == 0)
	{
		
		CString strDateTime;
		SYSTEMTIME systime;
		GetLocalTime (&systime);
		char szDate [100], szTime [100];
		GetDateFormat (LOCALE_USER_DEFAULT, 0, &systime, "yyyy-MM-dd", szDate, 100);
		GetTimeFormat (LOCALE_USER_DEFAULT, 0, &systime, "HHmmss", szTime, 100);
		strDateTime = szDate; strDateTime += " "; strDateTime += szTime; strDateTime += ".asf";
		SetDlgItemText (IDC_SAVEAS, strDateTime);
	}
	else
	{
		if (strchr(szFile, '.') == 0)
		 strcat(szFile, ".asf");
		SetDlgItemText (IDC_SAVEAS, szFile);
	}
	

	ApplyLanguage ();

	m_bGroupChanged = FALSE;

	if (m_pGroup == NULL)
		m_pGroup = _DldsGrps.FindGroup (_App.NewDL_GroupId ());

	if (m_pGroup != NULL && m_wndGroups.SelectGroup (m_pGroup))
	{
		m_bGroupChanged = TRUE;
		OnChangeGroups ();
	}

	m_wndDldType.AddString (LS (L_SAVEFILE));
	m_wndDldType.AddString (LS (L_OPENFILE));
	m_wndDldType.AddString (LS (L_SAVEFILEANDOPENIT));
	m_wndDldType.SetCurSel (0);

	CheckDlgButton (IDC_FILEAUTO, _App.NewDL_GenerateNameAutomatically () ? BST_CHECKED : BST_UNCHECKED);
	OnFileauto ();

	UpdateEnabled ();

	return TRUE;
}
コード例 #12
0
void CCreateTPDownloadDlg::UrlChanged()
{
	SetDlgItemText (IDC_QSIZE, LS (L_QUERYSIZE));
	if (m_bThread) m_bNeedExit = TRUE;
	if (IR_SUCCESS != Crack(m_strUrl))
	{
		GetDlgItem (IDC_QSIZE)->EnableWindow (FALSE);
		return;
	}

	CHAR szFile [10000];
	*szFile = 0;

	m_bUrlChanged = TRUE;

	if (m_dld->dwFlags & (DLD_MALICIOUS_NO | DLD_MALICIOUS_YES))
	{
		GetDlgItem (IDC_MALICIOUS)->EnableWindow (TRUE);
		m_dld->dwFlags &= ~ (DLD_MALICIOUS_NO | DLD_MALICIOUS_YES);
	}

	if (m_bGroupChanged == FALSE)
	{
		fsFileNameFromUrlPath (m_strUrl, FALSE, TRUE, szFile, sizeof (szFile));

		int len = strlen (szFile);
		vmsDownloadsGroupSmartPtr grp;

		if (len)
		{
			if (strchr(szFile, '.') == 0)
				strcat(szFile, ".asf");
			SetDlgItemText (IDC_SAVEAS, szFile);

			int i;
			for (i = len-1; i > 0; i--)
				if (szFile [i] == '.')	
					break;

			if (i && i < len-1)
			{
				i++;
				CHAR szExt [1000];
				strcpy (szExt, szFile + i);
				grp = _DldsGrps.FindGroupByExt (szExt);
			}
		}

		if (grp == NULL)
			grp = _DldsGrps.FindGroup (GRP_OTHER_ID);

		if (grp != NULL)
		{
			if (m_wndGroups.SelectGroup (grp))
				OnChangeGroups();
		}
	}
	bool bRtsp = (m_strUrl.Find("rtsp://") != -1);
	GetDlgItem (IDC_STRSPEED)->EnableWindow(bRtsp);
	GetDlgItem (IDC_STRSPEED_SPIN)->EnableWindow(bRtsp);
	GetDlgItem (IDC_QSIZE)->EnableWindow ();
}
コード例 #13
0
void CCreateTPDownloadDlg::OnSelchangeGroups() 
{
	OnChangeGroups ();
	m_bGroupChanged = TRUE;
}