⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 greenbrowseroptions.cpp

📁 用VC写的浏览器
💻 CPP
📖 第 1 页 / 共 4 页
字号:
		// NOTE: the ClassWizard will add member initialization here
	m_bSingleMenu = FALSE;
	m_bCompactFavBar = FALSE;
	m_bAddFav = FALSE;
	m_bDisplayOpenAll = FALSE;
	m_bFavShowUrl = FALSE;
	m_bShowHidden = FALSE;
	m_nMenuSize = 0;
	//}}AFX_DATA_INIT
}

CMenuProp::~CMenuProp()
{
}

void CMenuProp::DoDataExchange(CDataExchange* pDX)
{
	CSAPrefsSubDlg::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CMenuProp)
	DDX_Control(pDX, IDC_SPIN1, m_spin1);
	DDX_Check(pDX, IDC_SINGLEMENU, m_bSingleMenu);
	DDX_Check(pDX, IDC_ADDFAV, m_bAddFav);
	DDX_Check(pDX, IDC_DISPLAY_OPENALL, m_bDisplayOpenAll);
	DDX_Check(pDX, IDC_COMPACTFAVBAR, m_bCompactFavBar);
	DDX_Check(pDX, IDC_FAV_SHOW_URL, m_bFavShowUrl);
	DDX_Check(pDX, IDC_SHOW_HIDDEN, m_bShowHidden);
	DDX_Text(pDX, IDC_MAXMENU, m_nMenuSize);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CMenuProp, CSAPrefsSubDlg)
	//{{AFX_MSG_MAP(CMenuProp)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CStartProp property page

IMPLEMENT_DYNCREATE(CStartProp, CSAPrefsSubDlg)

CStartProp::CStartProp() : CSAPrefsSubDlg(CStartProp::IDD)
{
	//{{AFX_DATA_INIT(CStartProp)
	m_bCloseCleanCache = FALSE;
	m_bCloseCleanCookies = FALSE;
	m_bCloseCleanFormData = FALSE;
	m_bCloseCleanHistory = FALSE;
	m_bCloseCleanTypedAddress = FALSE;
	m_bCloseCleanTypedSearch = FALSE;
	m_bMenuLoadLastClose = FALSE;
	m_nStartMode = -1;
	//}}AFX_DATA_INIT
}

CStartProp::~CStartProp()
{
}

void CStartProp::DoDataExchange(CDataExchange* pDX)
{
	CSAPrefsSubDlg::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CStartProp)
	DDX_Check(pDX, IDC_CLOSE_CLEAN_CACHE, m_bCloseCleanCache);
	DDX_Check(pDX, IDC_CLOSE_CLEAN_COOKIES, m_bCloseCleanCookies);
	DDX_Check(pDX, IDC_CLOSE_CLEAN_FORM_DATA, m_bCloseCleanFormData);
	DDX_Check(pDX, IDC_CLOSE_CLEAN_HISTORY, m_bCloseCleanHistory);
	DDX_Check(pDX, IDC_CLOSE_CLEAN_TYPED_ADDRESS, m_bCloseCleanTypedAddress);
	DDX_Check(pDX, IDC_CLOSE_CLEAN_TYPED_SEARCH, m_bCloseCleanTypedSearch);
	DDX_Check(pDX, IDC_CLOSE_CLEAN_UNDO_CLOSE, m_bCloseCleanUndoClose);
	DDX_Check(pDX, IDC_LOAD_LAST_CLOSE, m_bMenuLoadLastClose);
	DDX_Radio(pDX, IDC_START_MODE, m_nStartMode);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CStartProp, CSAPrefsSubDlg)
	//{{AFX_MSG_MAP(CStartProp)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CStartProp message handlers

/////////////////////////////////////////////////////////////////////////////
// CDeleteProp property page

IMPLEMENT_DYNCREATE(CDeleteProp, CSAPrefsSubDlg)

CDeleteProp::CDeleteProp() : CSAPrefsSubDlg(CDeleteProp::IDD)
{
	//{{AFX_DATA_INIT(CDeleteProp)
	//}}AFX_DATA_INIT
}

CDeleteProp::~CDeleteProp()
{
}

void CDeleteProp::DoDataExchange(CDataExchange* pDX)
{
	CSAPrefsSubDlg::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDeleteProp)
	DDX_Control(pDX, IDC_LIST2, m_list2);
	DDX_Control(pDX, IDC_LIST, m_list);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDeleteProp, CSAPrefsSubDlg)
	//{{AFX_MSG_MAP(CDeleteProp)
	ON_BN_CLICKED(IDC_DELETE, OnDelete)
	ON_BN_CLICKED(IDC_DELETEALL, OnDeleteall)
	ON_BN_CLICKED(IDC_DELETE_SEARCH, OnDeleteSearch)
	ON_BN_CLICKED(IDC_DELETEALL_SEARCH, OnDeleteallSearch)
	ON_BN_CLICKED(IDC_EDIT, OnEdit)
	ON_BN_CLICKED(IDC_EDIT_SEARCH, OnEditSearch)
	ON_NOTIFY(NM_DBLCLK, IDC_LIST, OnDblclkList)
	ON_NOTIFY(NM_DBLCLK, IDC_LIST2, OnDblclkList2)
	ON_BN_CLICKED(IDC_DELETE_CURRENT, OnDeleteCurrent)
	ON_BN_CLICKED(IDC_DELETE_CURRENT_SEARCH, OnDeleteCurrentSearch)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDeleteProp message handlers

void CDeleteProp::OnDelete() 
{
	// TODO: Add your control notification handler code here
	int i,count = m_list.GetItemCount();
	if (count<=0)
		return;
	for (i=count-1;i>=0;i--)
	{
		if (m_list.GetCheck(i))
			m_list.DeleteItem(i);
	}
}

void CDeleteProp::OnDeleteall() 
{
	// TODO: Add your control notification handler code here
	m_list.DeleteAllItems();
}

void CDeleteProp::OnDeleteSearch() 
{
	// TODO: Add your control notification handler code here
	int i,count = m_list2.GetItemCount();
	if (count<=0)
		return;
	for (i=count-1;i>=0;i--)
	{
		if (m_list2.GetCheck(i))
			m_list2.DeleteItem(i);
	}
}

void CDeleteProp::OnDeleteallSearch() 
{
	// TODO: Add your control notification handler code here
	m_list2.DeleteAllItems();
}

BOOL CDeleteProp::OnInitDialog() 
{
#ifdef _WRITE_LNG_FILE_
	_WriteDlgString(this,"DialogDeleteProp");
#endif
	LOADDLG("DialogDeleteProp");
	CSAPrefsSubDlg::OnInitDialog();

	try{
	// TODO: Add extra initialization here
	TCHAR           sz[MAX_PATH];
	COMBOBOXEXITEM item;
	item.mask = CBEIF_TEXT;
	item.pszText = (LPTSTR)sz;
	item.cchTextMax = MAX_PATH;
	
	CRect rect;
	m_list.InsertColumn(0,"");
	m_list.GetWindowRect(rect);
	m_list.SetColumnWidth(0, rect.Width()-25);
	m_list.SetExtendedStyle(m_list.GetExtendedStyle()| LVS_EX_FULLROWSELECT|LVS_EX_CHECKBOXES);
	//
	m_list2.InsertColumn(0,"");
	m_list2.GetWindowRect(rect);
	m_list2.SetColumnWidth(0, rect.Width()-25);
	m_list2.SetExtendedStyle(m_list2.GetExtendedStyle()| LVS_EX_FULLROWSELECT|LVS_EX_CHECKBOXES);
	//
	int nc,i;
	//
	nc = pmf->m_wndAddress->SendMessage(CB_GETCOUNT, 0, 0);
	for(i=0;i<nc;i++)
	{
		item.iItem = i;
		pmf->m_wndAddress->GetItem(&item);
		m_list.InsertItem(i,sz);
	}
	//
	nc = pmf->m_wndSearch->SendMessage(CB_GETCOUNT, 0, 0);
	for(i=0;i<nc;i++)
	{
		item.iItem = i;
		pmf->m_wndSearch->GetItem(&item);
		m_list2.InsertItem(i,sz);
	}

	}catch(...){}

	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CDeleteProp::OnOK() 
{
	// TODO: Add your specialized code here and/or call the base class
	TCHAR           sz[MAX_PATH];

	COMBOBOXEXITEM item;
	item.mask = CBEIF_TEXT|CBEIF_IMAGE|CBEIF_SELECTEDIMAGE ;
	item.iImage = 1;
	item.iSelectedImage = 1;
	item.pszText = (LPTSTR)sz;
	item.cchTextMax = MAX_PATH;

	int nc,i;
	nc = m_list.GetItemCount();
	pmf->m_wndAddress->ResetContent();
	for(i=0;i<nc;i++)
	{
		item.iItem = i;
		m_list.GetItemText(i,0,sz,MAX_PATH);
		pmf->m_wndAddress->InsertItem(&item);
	}	
	pmf->SaveTypedURL();
	//
	nc = m_list2.GetItemCount();
	pmf->m_wndSearch->ResetContent();
	pmf->m_astrTypedSearch.RemoveAll();
	for(i=0;i<nc;i++)
	{
		item.iItem = i;
		m_list2.GetItemText(i,0,sz,MAX_PATH);
		pmf->m_wndSearch->InsertItem(&item);
		//
		pmf->m_astrTypedSearch.AddTail(sz);
	}	
	pmf->SaveSearchKey();

	CSAPrefsSubDlg::OnOK();
}
/////////////////////////////////////////////////////////////////////////////
// CStatusBarProp property page

IMPLEMENT_DYNCREATE(CStatusBarProp, CSAPrefsSubDlg)

CStatusBarProp::CStatusBarProp() : CSAPrefsSubDlg(CStatusBarProp::IDD)
{
	//{{AFX_DATA_INIT(CStatusBarProp)
	m_strStatusStringFormat = _T("");
	//}}AFX_DATA_INIT
}

CStatusBarProp::~CStatusBarProp()
{
}

void CStatusBarProp::DoDataExchange(CDataExchange* pDX)
{
	CSAPrefsSubDlg::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CStatusBarProp)
	DDX_Text(pDX, IDC_STATUS_STRING_FORMAT, m_strStatusStringFormat);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CStatusBarProp, CSAPrefsSubDlg)
	//{{AFX_MSG_MAP(CStatusBarProp)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CStatusBarProp message handlers
/////////////////////////////////////////////////////////////////////////////
// CConfirmProp property page

IMPLEMENT_DYNCREATE(CConfirmProp, CSAPrefsSubDlg)

CConfirmProp::CConfirmProp() : CSAPrefsSubDlg(CConfirmProp::IDD)
{
	//{{AFX_DATA_INIT(CConfirmProp)
	m_bConfirmExit = FALSE;
	m_bConfirmCloseAll = FALSE;
	m_bConfirmCloseLock = FALSE;
	m_bConfirmExitDowning = FALSE;
	m_bConfirmCloseAllKeepCur = FALSE;
	m_bConfirmUnsafePage = FALSE;
	//}}AFX_DATA_INIT
}

CConfirmProp::~CConfirmProp()
{
}

void CConfirmProp::DoDataExchange(CDataExchange* pDX)
{
	CSAPrefsSubDlg::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CConfirmProp)
	DDX_Check(pDX, IDC_COMFIRMEXIT, m_bConfirmExit);
	DDX_Check(pDX, IDC_CONFIRMCLOSEALL, m_bConfirmCloseAll);
	DDX_Check(pDX, IDC_CONFIRMCLOSELOCK, m_bConfirmCloseLock);
	DDX_Check(pDX, IDC_COMFIRMEXIT_DOWNING, m_bConfirmExitDowning);
	DDX_Check(pDX, IDC_CONFIRMCLOSEALL_KEEPCUR, m_bConfirmCloseAllKeepCur);
	DDX_Check(pDX, IDC_CONFIRM_UNSAFE_PAGE, m_bConfirmUnsafePage);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CConfirmProp, CSAPrefsSubDlg)
	//{{AFX_MSG_MAP(CConfirmProp)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CConfirmProp message handlers

void CDeleteProp::OnEdit() 
{
	// TODO: Add your control notification handler code here
	POSITION pos = m_list.GetFirstSelectedItemPosition();
	int current = m_list.GetNextSelectedItem(pos);
	if (current<0)
		return;
	CInputDlg dlg;
	CString strMsg;
	LOADSTR(strMsg ,IDS_INPUT_URL);
	dlg.m_strMsg = strMsg;
	CString strData = m_list.GetItemText(current,0);
	dlg.m_strOutput = strData;
	
	if(dlg.DoModal() == IDOK)
		m_list.SetItemText(current,0,dlg.m_strOutput);
}

void CDeleteProp::OnEditSearch() 
{
	// TODO: Add your control notification handler code here
	POSITION pos = m_list2.GetFirstSelectedItemPosition();
	int current = m_list2.GetNextSelectedItem(pos);
	if (current<0)
		return;
	CInputDlg dlg;
	CString strMsg;
	LOADSTR(strMsg ,IDS_INPUT_KEYWORD);
	dlg.m_strMsg = strMsg;
	CString strData = m_list2.GetItemText(current,0);
	dlg.m_strOutput = strData;
	
	if(dlg.DoModal() == IDOK)
		m_list2.SetItemText(current,0,dlg.m_strOutput);
}

void CDeleteProp::OnDblclkList(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	OnEdit();
	*pResult = 0;
}

void CDeleteProp::OnDblclkList2(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	OnEditSearch();
	*pResult = 0;
}

/////////////////////////////////////////////////////////////////////////////
// CCollectorProp property page

IMPLEMENT_DYNCREATE(CCollectorProp, CSAPrefsSubDlg)

CCollectorProp::CCollectorProp() : CSAPrefsSubDlg(CCollectorProp::IDD)
{
	//{{AFX_DATA_INIT(CCollectorProp)
	m_bOutputSaveTime = FALSE;
	m_bOutputSaveFilter = FALSE;
	m_bOutputSaveImg = FALSE;
	m_bOutputSavePage = FALSE;
	m_bOutputAutoClean = FALSE;
	m_bCollectorAddtoBottom = -1;
	m_bOutputSaveText = FALSE;
	m_bOutputSaveUrlFilter = FALSE;
	//}}AFX_DATA_INIT
}

CCollectorProp::~CCollectorProp()
{
}

void CCollectorProp::DoDataExchange(CDataExchange* pDX)
{
	CSAPrefsSubDlg::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CCollectorProp)
	DDX_Check(pDX, IDC_OUTPUT_SAVE_TIME, m_bOutputSaveTime);
	DDX_Check(pDX, IDC_OUTPUT_SAVE_FILTER, m_bOutputSaveFilter);
	DDX_Check(pDX, IDC_OUTPUT_SAVE_IMG, m_bOutputSaveImg);
	DDX_Check(pDX, IDC_OUTPUT_SAVE_PAGE, m_bOutputSavePage);
	DDX_Check(pDX, IDC_OUTPUT_AUTO_CLEAN, m_bOutputAutoClean);
	DDX_Radio(pDX, IDC_ADD_NEW_BOTTOM, m_bCollectorAddtoBottom);
	DDX_Check(pDX, IDC_OUTPUT_SAVE_TEXT, m_bOutputSaveText);
	DDX_Check(pDX, IDC_OUTPUT_SAVE_URL_FILTER, m_bOutputSaveUrlFilter);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CCollectorProp, CSAPrefsSubDlg)
	//{{AFX_MSG_MAP(CCollectorProp)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CCollectorProp message handlers

void CGeneralProp::OnGetLinkPath() 
{
	// TODO: Add your control notification handler code here
	if (_BrowserPath(this,m_strLinkPath ) == TRUE) 
		GetDlgItem(IDC_LINK_PATH)->SetWindowText(m_strLinkPath);//UpdateData(FALSE);
}

void CGeneralProp::OnDefaultLinkPath() 
{
	// TODO: Add your control notification handler code here
	CButton *p = (CButton*)GetDlgItem(IDC_DEFAULT_LINKPATH);
	BOOL state = p->GetCheck();
	SetLinkPathState(!state);
}
/////////////////////////////////////////////////////////////////////////////
// CDownProp property page

IMPLEMENT_DYNCREATE(CDownProp, CSAPrefsSubDlg)

CDownProp::CDownProp() : CSAPrefsSubDlg(CDownProp::IDD)
{
	//{{AFX_DATA_INIT(CDownProp)
	m_bDLActivex = FALSE;
	m_bDLApplet = FALSE;
	m_bDLImage = FALSE;
	m_bDLScript = FALSE;
	m_bDLSound = FALSE;
	m_bDLVideo = FALSE;
	m_nDownAll = -1;
	m_bDLAnimation = FALSE;
	m_bDLFlash = FALSE;
	m_nManagerIndex = -1;
	m_strManagerType = _T("");
	//}}AFX_DATA_INIT
}

CDownProp::~CDownProp()
{
}

void CDownProp::DoDataExchange(CDataExchange* pDX)
{
	CSAPrefsSubDlg::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CDownProp)
	DDX_Control(pDX, IDC_DOWN_MANAGER, m_DownManager);
	DDX_Check(pDX, IDC_DLACTIVEX, m_bDLActivex);
	DDX_Check(pDX, IDC_DLAPPLET, m_bDLApplet);
	DDX_Check(pDX, IDC_DLIMG, m_bDLImage);
	DDX_Check(pDX, IDC_DLJS, m_bDLScript);
	DDX_Check(pDX, IDC_DLSOUND, m_bDLSound);
	DDX_Check(pDX, IDC_DLVIDEO, m_bDLVideo);
	DDX_CBIndex(pDX, IDC_DOWN_ALL, m_nDownAll);
	DDX_Check(pDX, IDC_PLAY_ANIMATION, m_bDLAnimation);
	DDX_Check(pDX, IDC_PLAY_FLASH, m_bDLFlash);
	DDX_CBIndex(pDX, IDC_DOWN_MANAGER, m_nManagerIndex);
	DDX_Text(pDX, IDC_DOWN_TYPE, m_strManagerType);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CDownProp, CSAPrefsSubDlg)
	//{{AFX_MSG_MAP(CDownProp)
	ON_BN_CLICKED(IDC_DOWN_EDIT, OnDownEdit)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CDownProp message handlers

BOOL CDownProp::OnInitDialog() 
{
#ifdef _WRITE_LNG_FILE_
	_WriteDlgString(this,"DialogDownProp");
#endif
	CSAPrefsSubDlg::OnInitDialog();
#ifdef _WRITE_LNG_FILE_
	_WriteDlgComboBox(this,"DialogDownProp");
#endif
	LOADDLG("DialogDownProp");

	// TODO: Add extra initialization here
	CString filename = theApp.m_strUser+"DownManager.ini";

	char key[10] = "N";
	TCHAR buf[1024];
	CString str;
	LOADSTR(str ,IDS_NONE);
	m_DownManager.AddString(str);
	int i=1;
	BOOL r = TRUE;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -