📄 greenbrowser.cpp
字号:
strURL = buf;
}
pmf->NewChildWindow(1, nOpenType, strURL);
}
else
{
//enable go home
nOpenType = bGoHome;
if(bGoHome == 2|| run)// must be first for run
{
char tmp[INTERNET_MAX_PATH_LENGTH];
if (run)
{
remove(m_strUser+"LastVisit.ini");
rename(m_strUser+"Visiting.ini", m_strUser+"LastVisit.ini");
}
CString filename = m_strUser+"LastVisit.ini";
DWORD r = ::GetPrivateProfileString("LastVisit", "url0", NULL, tmp, INTERNET_MAX_PATH_LENGTH, filename);
if(r)
{
CSelectURL dlg;
dlg.DoModal();
}
}
else if(bGoHome == 3)
{
CChildFrame *tcf;
//load last visit
char state[10]="state",url[8]="url"; // x+5
CString filename = m_strUser+"LastVisit.ini";
int i=0,nState;
char tmp[INTERNET_MAX_PATH_LENGTH];
BOOL r = TRUE;
//
BOOL bTemp = pmf->m_nNewSequence;
pmf->m_nNewSequence = 0;
while(r)
{
itoa(i, state+5, 10);
itoa(i, url+3, 10);
r = ::GetPrivateProfileString("LastVisit", url, NULL, tmp, INTERNET_MAX_PATH_LENGTH, filename);
if (r)
{
tcf = pmf->NewChildWindow(1, 2, tmp);
if (tcf)
{
nState = ::GetPrivateProfileInt("LastVisit", state, 0, filename);
if (nState ==4)
tcf->m_bLock = TRUE;
}
}
i++;
}
pmf->m_nNewSequence = bTemp;
}
else if(bGoHome == 0)
pmf->PostMessage(WM_COMMAND, ID_FILE_NEW_BLANK, 0);
else if(bGoHome == 1)//3.2
pmf->PostMessage(WM_COMMAND, ID_FILE_NEW_S, 0);
else if(bGoHome == 4)
{
pmf->OpenAllFavs(pmf->m_strStartFavFolder);
}
else if(bGoHome == 5)
{
//start group
pmf->OpenGroup(pmf->m_strStartGroup+".cgp");
}
else if(bGoHome == 6)
;//do nothing
}
pmf->m_bAutoHideMode = GetProfileInt("Settings", "AutoHide", 0);
if(pmf->m_bAutoHideMode)
{
pmf->AutoHideModeOn();
}
//full screen
pmf->m_bFullScreenMode = GetProfileInt("Settings", "FullScreen", 0);
if(pmf->m_bFullScreenMode)
{
pmf->FullScreenModeOn();
}
//############################################################################
pmf->UpdateWindow();
//delay load
pmf->PostMessage(WM_DELAYLOAD_CONFIG);
WriteProfileInt("Settings", "Running", 1);
return TRUE;
}
// App command to run the dialog
void CGreenBrowserApp::OnAppAbout()
{
CAboutDlg aboutDlg;
aboutDlg.DoModal();
}
/////////////////////////////////////////////////////////////////////////////
// CGreenBrowserApp message handlers
//#pragma optimize( "", on )
int CGreenBrowserApp::ExitInstance()
{
// TODO: Add your specialized code here and/or call the base class
try{
WSACleanup();
if(m_pDispOM)
delete m_pDispOM;
if(m_pDropTarget)
delete m_pDropTarget;
}catch(...){}
if (m_bATLInited)
{
_Module.RevokeClassObjects();
_Module.Term();
}
CoUninitialize();
return CWinApp::ExitInstance();
}
void CGreenBrowserApp::LoadConfg()
{
char *tmp = NULL;
//enable popup
g_bKillPop = GetProfileInt("Settings", "KillPop", 1);
g_bKillAutoWin = GetProfileInt("Settings", "KillAutoWin", 1);
g_bKillDupWin = GetProfileInt("Settings", "KillDupWin", 1);
g_bKillListWin = GetProfileInt("Settings", "KillListWin", 1);
//
pmf->m_bNotConfirmPopupFilter = GetProfileInt("Settings", "NotConfirmPopupFilter", 1);
pmf->m_bPlayPopupFilterSound = GetProfileInt("Settings", "PlayPopupFilterSound", 1);
pmf->m_nPopDelay = GetProfileInt("Settings", "PopupBound", 120);
pmf->m_nPopDelay /= 100;
pmf->m_bFilterRefresh = GetProfileInt("Settings", "FilterRefresh", FALSE);
pmf->m_bNotFilterClickDialog = GetProfileInt("Settings", "NotFilterClickDialog", TRUE);
//
pmf->m_bUseUrlFilter = GetProfileInt("Settings", "UseUrlFilter", TRUE);
pmf->m_bUseDialogFilter = GetProfileInt("Settings", "UseDialogFilter", TRUE);
pmf->m_bUseFlyingFilter = GetProfileInt("Settings", "UseFlyingFilter", TRUE);
if (pmf->m_bUseFlyingFilter)
pmf->RefreshKillFlyingCode();
//
pmf->m_bKillBlank = GetProfileInt("Filter", "KillBlank", TRUE);
pmf->m_strBlankContent = GetProfileString("Filter", "BlankContent", "<AD>");
if (pmf->m_bKillBlank)
pmf->RefreshKillBlankCode();
//
pmf->m_bReloadUnShownImage = GetProfileInt("Settings", "ReloadUnShownImage", TRUE);
//
pmf->m_nEnableFilter = GetProfileInt("Settings", "EnableFilter", 0xF);
//window pos
int top = GetProfileInt("Settings", "top", 50);
int left = GetProfileInt("Settings", "left", 50);
int width = GetProfileInt("Settings", "width", 700);
int height = GetProfileInt("Settings", "height", 500);
if( width!=0 && top<2000 && top>=-20)
m_pMainWnd->SetWindowPos(&CWnd::wndTop, left, top, width, height,SWP_HIDEWINDOW);
if( GetProfileInt("Settings", "Zoomed", 1))
m_nCmdShow = SW_SHOWMAXIMIZED;
pmf->m_nTitleLen = GetProfileInt("Settings", "TabSize", 20);
//load defaul proxy
pmf->GetIeProxy();
pmf->m_bEnProxy = GetProfileInt("Settings", "EnableProxy", 0);
pmf->m_strCurProxy = GetProfileString("Settings", "CurrentProxy", NULL);
pmf->m_strCurProxyName = GetProfileString("Settings", "CurrentProxyName", NULL);//pmf->GetProxyName(pmf->m_strCurProxy);
pmf->m_strProxyByPass = GetProfileString("Settings", "ProxyByPass", "<local>");
pmf->UpdateProxy();
//load defaul web proxy
pmf->m_strDefaultWebProxy = GetProfileString("Settings", "DefaultWebProxy", NULL);
//active new window
pmf->m_bActiveNewWindow = GetProfileInt("Settings", "ActiveNew", 0);
//
pmf->m_bOpenFolderOut = GetProfileInt("Settings", "OpenFolderOut", TRUE);
//the start favorite folder
pmf->m_strStartFavFolder = GetProfileString("Settings", "StartFolder", NULL);
//insert to next tab
pmf->m_nNewSequence = GetProfileInt("Settings", "NewSequence", 1);
//Exp Bar width
pmf->m_nExpWidth = GetProfileInt("Settings", "ExpWidth", 200);
//Exp Bar
CString str = GetProfileString("Settings", "ExpBar");
CString str1;
LOADSTR(str1 ,IDS_TITLE_HIS);
if(str==str1)
PostMessage(m_pMainWnd->m_hWnd, WM_COMMAND, ID_VIEW_HIS,0);
LOADSTR(str1 ,IDS_TITLE_FAVORITE);
if(str==str1)
PostMessage(m_pMainWnd->m_hWnd, WM_COMMAND, ID_FAVORITES_DROPDOWN,0);
LOADSTR(str1 ,IDS_TITLE_SHELL);
if(str==str1)
PostMessage(m_pMainWnd->m_hWnd, WM_COMMAND, ID_VIEW_FOLDER,0);
LOADSTR(str1 ,IDS_TITLE_RESOURCE);
if(str==str1)
PostMessage(m_pMainWnd->m_hWnd, WM_COMMAND, ID_VIEW_EXPLOREBAR_RESOURCE,0);
//autosizing tab
pmf->m_bAutoTab = GetProfileInt("Settings", "AutoTab", 1);
//max autosizing tab width
pmf->m_nMaxTabWidth = GetProfileInt("Settings", "MaxTabWidth", 100);
//min autosizing tab width
pmf->m_nMinTabWidth = GetProfileInt("Settings", "MinTabWidth", 50);
//
g_bShowIndex = GetProfileInt("Settings","ShowIndex", TRUE);
g_bShowIndex = GetProfileInt("Settings","ShowIndex", TRUE);
g_bShowDot = GetProfileInt("Settings","ShowDot", TRUE);
g_bShowRead = GetProfileInt("Settings","ShowRead", TRUE);
g_bShowFavIcon = GetProfileInt("Settings","ShowFavIcon", TRUE);
//silent
g_bSilent = GetProfileInt("Settings", "Silent", TRUE);
if (g_bSilent != (_RegGetString(HKEY_CURRENT_USER,
"Software\\Microsoft\\Internet Explorer\\Main",
"Disable Script Debugger") == "yes" ? TRUE : FALSE))
{
if (g_bSilent)
_RegSetString(HKEY_CURRENT_USER,
"Software\\Microsoft\\Internet Explorer\\Main",
"Disable Script Debugger",
"yes");
else
_RegSetString(HKEY_CURRENT_USER,
"Software\\Microsoft\\Internet Explorer\\Main",
"Disable Script Debugger",
"no");
}
//default font size
g_nDefFontSize = GetProfileInt("Settings", "DefFontSize", 2);
//disable scroll text on status bar
g_bDisScrollText = GetProfileInt("Settings", "DisScrollText", FALSE);
//filte blank popup window from same parent
g_bFilteBlank = GetProfileInt("Settings", "FilteBlank", FALSE);
//interval
pmf->m_nInterval = GetProfileInt("Settings", "Interval", 0);
//auto scroll
pmf->m_bDefScrollAfterDL = GetProfileInt("Settings", "AutoScrollAfterDL", FALSE);
pmf->m_bDefUseAutoScroll = GetProfileInt("Settings", "UseAutoScroll", FALSE);
pmf->m_nDefSrSpeed = GetProfileInt("Settings", "SrSpeed", 1);
pmf->m_nAutoScrollPage = GetProfileInt("Settings", "AutoScrollPage", 0);
//scroll speed
g_fSeed = (float)GetProfileInt("Settings", "SpeedSeed", 100);
if(g_fSeed == 0)
g_fSeed = 1;
else
g_fSeed = g_fSeed/100;
//start group
pmf->m_strStartGroup = GetProfileString("Settings", "StartGroup", "");
//default bg color
pmf->m_strBGColor = GetProfileString("Settings", "BGColor", "#FFFFFF");
//default auto refresh
pmf->m_nDefRefreshInterval = GetProfileInt("Settings", "AutoRefresh", 60);
//auto set background
g_bAutoSetBG = GetProfileInt("Settings", "AutoSetBG", FALSE);
//animate icon
pmf->m_bAnimatIcon = GetProfileInt("Settings", "AnimateIcon", TRUE);
//lock homepage
g_bLockHomepage = GetProfileInt("Settings", "LockHomepage", FALSE);
pmf->m_bMouseCtrlScrSpeed = GetProfileInt("Settings", "MouseCtrlSpeed", FALSE);
pmf->m_bDisDownActivex = GetProfileInt("Settings", "DisDownActivex", TRUE);
//down
pmf->m_nDownAll = GetProfileInt("Settings", "DownAll", 0);
//
pmf->m_nCollectorTrans = GetProfileInt("Settings", "CollectorTrans", 255);
pmf->m_nMonitorTrans = GetProfileInt("Settings", "MonitorTrans", 180);
}
void CGreenBrowserApp::SaveConfg()
{
try{
//proxy
if(g_bProxyDirty)
pmf->m_aProxyCategories.SaveProxies();
g_bProxyDirty = FALSE;
//pop filter
WriteProfileInt("Settings", "KillPop", g_bKillPop);
WriteProfileInt("Settings", "KillAutoWin", g_bKillAutoWin);
WriteProfileInt("Settings", "KillDupWin", g_bKillDupWin);
WriteProfileInt("Settings", "KillListWin", g_bKillListWin);
//content filter
WriteProfileInt("Settings", "UseUrlFilter", pmf->m_bUseUrlFilter);
WriteProfileInt("Settings", "UseFlyingFilter", pmf->m_bUseFlyingFilter);
WriteProfileInt("Settings", "UseDialogFilter", pmf->m_bUseDialogFilter);
WriteProfileInt("Settings", "EnableFilter", pmf->m_nEnableFilter);
//
WriteProfileInt("Settings", "DisDownActivex", pmf->m_bDisDownActivex);
//else
WriteProfileInt("Settings", "TabSize", pmf->m_nTitleLen);
BYTE *tmp = NULL;
int i = 1;
//save defaul web proxy
WriteProfileString("Settings","DefaultWebProxy", pmf->m_strDefaultWebProxy);
//save defaul proxy
WriteProfileString("Settings","CurrentProxy", pmf->m_strCurProxy);
WriteProfileString("Settings","CurrentProxyName", pmf->m_strCurProxyName);
WriteProfileString("Settings","ProxyByPass", pmf->m_strProxyByPass);
//active new
WriteProfileInt("Settings", "ActiveNew", pmf->m_bActiveNewWindow);
WriteProfileInt("Settings", "LinkInNewWindow", g_bLinkInNewWindow);
//start favorite folder
WriteProfileString("Settings","StartFolder", pmf->m_strStartFavFolder);
//multiline tab
WriteProfileInt("Settings", "MultiLineTab", pmf->m_bMultiLineTab);
//insert to next tab
WriteProfileInt("Settings", "NewSequence", pmf->m_nNewSequence);
//Background PIC
WriteProfileString("Settings", "SkinName", pmf->m_strSkinName);
//Exp Bar
CString str="";
if(pmf->m_wndInstantBar.GetSafeHwnd()==NULL)
str = "";
else if(pmf->m_wndInstantBar.IsVisible())
pmf->m_wndInstantBar.GetWindowText(str);
WriteProfileString("Settings", "ExpBar", str);
if(pmf->m_wndInstantBar.GetSafeHwnd()!=NULL)
{
CRect rect;
pmf->m_wndInstantBar.GetWindowRect(&rect);
WriteProfileInt("Settings", "ExpWidth", rect.Width());
}
//text label
WriteProfileInt("Settings", "TextLabel", pmf->m_nTextLabel);
//text label
WriteProfileInt("Settings", "ColorIcon", pmf->m_bColorIcon);
//autosizing tab
WriteProfileInt("Settings","AutoTab", pmf->m_bAutoTab);
//max autosizing tab width
WriteProfileInt("Settings","MaxTabWidth", pmf->m_nMaxTabWidth);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -