Added print capabilites

import/tags/KMELEON_0_4
doozan 22 years ago
parent dd09d48f5f
commit 9df869c9a4
  1. 40
      k-meleon/BrowserView.cpp
  2. 7
      k-meleon/BrowserView.h
  3. 8
      k-meleon/KMeleon.dsp
  4. 251
      k-meleon/MenuParser.cpp
  5. 22
      k-meleon/MfcEmbed.rc
  6. 246
      k-meleon/PrintProgressDialog.cpp
  7. 70
      k-meleon/PrintProgressDialog.h
  8. 5
      k-meleon/StdAfx.h
  9. 11
      k-meleon/resource.h

@ -54,7 +54,7 @@ extern CMfcEmbedApp theApp;
#include "BrowserImpl.h"
#include "BrowserFrm.h"
#include "Dialogs.h"
#include "PrintProgressDialog.h"
#include "ToolBarEx.h"
#include "Utils.h"
#include "KmeleonMessages.h"
@ -88,6 +88,8 @@ BEGIN_MESSAGE_MAP(CBrowserView, CWnd)
ON_COMMAND(ID_FILE_SAVE_AS, OnFileSaveAs)
ON_COMMAND(ID_VIEW_SOURCE, OnViewSource)
ON_COMMAND(ID_VIEW_INFO, OnViewInfo)
ON_COMMAND(ID_FILE_PRINT, OnFilePrint)
// ON_UPDATE_COMMAND_UI(ID_FILE_PRINT, OnUpdateFilePrint)
ON_COMMAND(ID_NAV_BACK, OnNavBack)
ON_COMMAND(ID_NAV_FORWARD, OnNavForward)
ON_COMMAND(ID_NAV_SEARCH, OnNavSearch)
@ -139,6 +141,8 @@ CBrowserView::CBrowserView()
mbDocumentLoading = PR_FALSE;
m_pFindDlg = NULL;
m_pPrintProgressDlg = NULL;
m_bCurrentlyPrinting = NULL;
m_tempFileCount = 0;
}
@ -1029,6 +1033,9 @@ void CBrowserView::OnKmeleonForum()
void CBrowserView::OnShowFindDlg() {
PostMessage(WM_COMMAND, ID_FILE_PRINT, 0);
return;
// When the the user chooses the Find menu item
// and if a Find dlg. is already being shown
// just set focus to the existing dlg instead of
@ -1140,6 +1147,37 @@ LRESULT CBrowserView::OnFindMsg(WPARAM wParam, LPARAM lParam) {
return 0;
}
void CBrowserView::OnFilePrint()
{
nsCOMPtr<nsIDOMWindow> domWindow;
mWebBrowser->GetContentDOMWindow(getter_AddRefs(domWindow));
if(domWindow) {
nsCOMPtr<nsIWebBrowserPrint> print(do_GetInterface(mWebBrowser));
if(print)
{
CPrintProgressDialog dlg(mWebBrowser, domWindow);
nsCOMPtr<nsIURI> currentURI;
nsresult rv = mWebNav->GetCurrentURI(getter_AddRefs(currentURI));
if(NS_SUCCEEDED(rv) || currentURI)
{
nsXPIDLCString path;
currentURI->GetPath(getter_Copies(path));
dlg.SetURI(path.get());
}
m_bCurrentlyPrinting = TRUE;
dlg.DoModal();
m_bCurrentlyPrinting = FALSE;
}
}
}
/////////////////////////////////////////////////////////////////////////////
void CBrowserView::OnUpdateFilePrint(CCmdUI* pCmdUI)
{
pCmdUI->Enable(!m_bCurrentlyPrinting);
}
// Called from the busy state related methods in the
// BrowserFrameGlue object
//

@ -40,6 +40,7 @@
class CBrowserFrame;
class CBrowserImpl;
class CFindDialog;
class CPrintProgressDialog;
class CBrowserView : public CWnd
{
@ -111,6 +112,10 @@ protected:
int m_tempFileCount;
CFindDialog* m_pFindDlg;
CPrintProgressDialog* m_pPrintProgressDlg;
// Indicates whether we are currently printing
BOOL m_bCurrentlyPrinting;
// Overrides
// ClassWizard generated virtual function overrides
@ -155,6 +160,8 @@ protected:
afx_msg void OnSaveLinkAs();
afx_msg void OnSaveImageAs();
afx_msg void OnShowFindDlg();
afx_msg void OnFilePrint();
afx_msg void OnUpdateFilePrint(CCmdUI* pCmdUI);
afx_msg void OnFindNext();
afx_msg void OnFindPrev();
afx_msg LRESULT OnFindMsg(WPARAM wParam, LPARAM lParam);

@ -235,6 +235,10 @@ SOURCE=.\PreferencesDlg.cpp
# End Source File
# Begin Source File
SOURCE=.\PrintProgressDialog.cpp
# End Source File
# Begin Source File
SOURCE=.\ProfileMgr.cpp
# End Source File
# Begin Source File
@ -318,6 +322,10 @@ SOURCE=.\Preferences.h
# End Source File
# Begin Source File
SOURCE=.\PrintProgressDialog.h
# End Source File
# Begin Source File
SOURCE=.\ProfileMgr.h
# End Source File
# Begin Source File

@ -36,16 +36,16 @@ CMenuParser::CMenuParser(CString &filename){
}
CMenuParser::~CMenuParser(){
POSITION pos = menus.GetStartPosition();
CMenu *m;
CString s;
while (pos){
menus.GetNextAssoc( pos, s, m);
if (m){
m->DestroyMenu();
delete m;
}
}
POSITION pos = menus.GetStartPosition();
CMenu *m;
CString s;
while (pos){
menus.GetNextAssoc( pos, s, m);
if (m){
m->DestroyMenu();
delete m;
}
}
}
@ -150,138 +150,137 @@ int CMenuParser::Load(CString &filename){
}
END_CATCH
long length = menuFile->GetLength();
char *buffer = new char[length + 1];
menuFile->Read(buffer, length);
// force the terminating 0
buffer[length] = 0;
long length = menuFile->GetLength();
char *buffer = new char[length + 1];
menuFile->Read(buffer, length);
// force the terminating 0
buffer[length] = 0;
menuFile->Close();
delete menuFile;
menuFile = NULL;
menuFile->Close();
delete menuFile;
menuFile = NULL;
TranslateTabs(buffer);
TranslateTabs(buffer);
CMap<CString, LPCSTR, int, int &> defineMap;
CMap<CString, LPCSTR, int, int &> defineMap;
#include "defineMap.cpp"
CMenu *currentMenu = NULL;
char *p = strtok(buffer, "\r\n");
while (p){
if (p[0] == '#'){
}
else if (!currentMenu){
// There can only be 2 things outside a menu:
// comments, and the beginning of a menu block
char *cb = strchr(p, '{');
if (cb){
*cb = 0;
p = SkipWhiteSpace(p);
TrimWhiteSpace(p);
currentMenu = new CMenu();
if (strstr(p, _T("Main"))){
currentMenu->CreateMenu();
}else{
currentMenu->CreatePopupMenu();
}
CMenu *popup = NULL;
if (menus.Lookup(CString(p), popup)){
popup->DestroyMenu();
delete popup;
}
menus[p] = currentMenu;
LOG_1("Created Menu %s", p);
}
}
else{
p = SkipWhiteSpace(p);
TrimWhiteSpace(p);
if (p[0] == ':'){
p ++;
CMenu *popup = NULL;
menus.Lookup(CString(p), popup);
if (popup){
currentMenu->AppendMenu(MF_POPUP | MF_STRING, (UINT)popup->m_hMenu, p);
LOG_1("Added popup %s", p);
}else{
LOG_ERROR_1("Popup %s not found!", p);
}
}
else if (p[0] == '-'){
currentMenu->AppendMenu(MF_SEPARATOR);
LOG_1("Added Seperator", 0);
}
else if (p[0] == '}'){
currentMenu = NULL;
LOG_1("Ended Menu", 0);
CMenu *currentMenu = NULL;
char *p = strtok(buffer, "\r\n");
while (p){
if (p[0] == '#'){
}
else {
// it's either a plugin or a menu item
char *op = strchr(p, '(');
if (op){ // if there's an open parenthesis, we'll assume it's a plugin
char *parameter = op + 1;
char *cp = strrchr(parameter, ')');
if (cp) *cp = 0;
*op = 0;
TrimWhiteSpace(p);
else if (!currentMenu){
// There can only be 2 things outside a menu:
// comments, and the beginning of a menu block
char *cb = strchr(p, '{');
if (cb){
*cb = 0;
kmeleonPlugin * kPlugin = theApp.plugins.Load(p);
p = SkipWhiteSpace(p);
TrimWhiteSpace(p);
if (kPlugin) {
if (kPlugin->pf->DoMenu){
kPlugin->pf->DoMenu(currentMenu->GetSafeHmenu(), parameter);
currentMenu = new CMenu();
LOG_2("Called plugin %s with parameter %s", p, parameter);
}else{
LOG_ERROR_1( "Plugin %s has no menu", p);
}
}else{
LOG_ERROR_2( "Could not load plugin %s\r\n\twith parameter %s", p, parameter );
}
}
else {
char *e = strrchr(p, '=');
if (e){
*e = 0;
e = SkipWhiteSpace(e+1);
int val;
if (!defineMap.Lookup(e, val)){
val = atoi(e);
if (strstr(p, _T("Main")))
currentMenu->CreateMenu();
else
currentMenu->CreatePopupMenu();
CMenu *popup = NULL;
if (menus.Lookup(CString(p), popup)) {
popup->DestroyMenu();
delete popup;
}
TrimWhiteSpace(p);
currentMenu->AppendMenu(MF_STRING, val, p);
LOG_2("Added menu item %s with command %d", p, val);
}
else {
LOG_ERROR_1("I don't know what to do with %s", p);
}
}
menus[p] = currentMenu;
LOG_1("Created Menu %s", p);
}
}
} // currentMenu
p = strtok(NULL, "\r\n");
} // while
else {
p = SkipWhiteSpace(p);
TrimWhiteSpace(p);
if (p[0] == ':'){
p ++;
CMenu *popup = NULL;
menus.Lookup(CString(p), popup);
if (popup){
currentMenu->AppendMenu(MF_POPUP | MF_STRING, (UINT)popup->m_hMenu, p);
LOG_1("Added popup %s", p);
}
else
LOG_ERROR_1("Popup %s not found!", p);
}
else if (p[0] == '-'){
currentMenu->AppendMenu(MF_SEPARATOR);
LOG_1("Added Seperator", 0);
}
else if (p[0] == '}') {
currentMenu = NULL;
LOG_1("Ended Menu", 0);
}
else {
// it's either a plugin or a menu item
char *op = strchr(p, '(');
if (op) { // if there's an open parenthesis, we'll assume it's a plugin
char *parameter = op + 1;
char *cp = strrchr(parameter, ')');
if (cp) *cp = 0;
*op = 0;
TrimWhiteSpace(p);
kmeleonPlugin * kPlugin = theApp.plugins.Load(p);
if (kPlugin) {
if (kPlugin->pf->DoMenu){
kPlugin->pf->DoMenu(currentMenu->GetSafeHmenu(), parameter);
LOG_2("Called plugin %s with parameter %s", p, parameter);
}
else
LOG_ERROR_1( "Plugin %s has no menu", p);
}
else
LOG_ERROR_2( "Could not load plugin %s\r\n\twith parameter %s", p, parameter );
}
else {
char *e = strrchr(p, '=');
if (e) {
*e = 0;
e = SkipWhiteSpace(e+1);
int val;
if (!defineMap.Lookup(e, val))
val = atoi(e);
TrimWhiteSpace(p);
currentMenu->AppendMenu(MF_STRING, val, p);
LOG_2("Added menu item %s with command %d", p, val);
}
else
LOG_ERROR_1("I don't know what to do with %s", p);
}
}
} // currentMenu
p = strtok(NULL, "\r\n");
} // while
delete [] buffer;
delete [] buffer;
if (log){
delete log;
}
if (log)
delete log;
return 1;
return 1;
}
CMenu *CMenuParser::GetMenu(char *menuName){
CMenu *menu;
if (!menus.Lookup(menuName, menu)){
return NULL;
}
return menu;
CMenu *menu;
if (!menus.Lookup(menuName, menu))
return NULL;
return menu;
}

@ -74,6 +74,8 @@ BEGIN
MENUITEM "&Open File...\tCtrl+O", ID_FILE_OPEN
MENUITEM "&Save Page As...\tCtrl+S", ID_FILE_SAVE_AS
MENUITEM SEPARATOR
MENUITEM "&Print...\tCtrl-P", ID_FILE_PRINT
MENUITEM SEPARATOR
MENUITEM "E&xit", ID_APP_EXIT
END
POPUP "&Edit"
@ -471,6 +473,16 @@ BEGIN
ES_READONLY | WS_VSCROLL
END
IDD_PRINT_PROGRESS_DIALOG DIALOG DISCARDABLE 0, 0, 294, 55
STYLE DS_SYSMODAL | DS_MODALFRAME | DS_CENTER | WS_POPUP | WS_VISIBLE |
WS_CAPTION
CAPTION "Printing..."
FONT 8, "MS Sans Serif"
BEGIN
PUSHBUTTON "Cancel",IDCANCEL,122,34,50,14
LTEXT "Document:",IDC_PPD_DOC_TITLE_STATIC,7,7,36,8
LTEXT "",IDC_PPD_DOC_TXT,43,7,244,8
END
#ifndef _MAC
/////////////////////////////////////////////////////////////////////////////
@ -606,6 +618,14 @@ BEGIN
BOTTOMMARGIN, 147
HORZGUIDE, 123
END
IDD_PRINT_PROGRESS_DIALOG, DIALOG
BEGIN
LEFTMARGIN, 7
RIGHTMARGIN, 287
TOPMARGIN, 7
BOTTOMMARGIN, 48
END
END
#endif // APSTUDIO_INVOKED
@ -697,6 +717,8 @@ BEGIN
ID_NAV_RELOAD "Reload the current page"
ID_NAV_HOME "Go to the Home page"
ID_NAV_SEARCH "Search the Internet"
ID_WINDOW_NEXT "Switch to next K-Meleon window"
ID_WINDOW_PREV "Switch to previous K-Meleon window"
ID_LINK_KMELEON_HOME "Go to the K-Meleon home page"
ID_LINK_KMELEON_FORUM "Go to the K-Meleon forums"
END

@ -0,0 +1,246 @@
// PrintProgressDialog.cpp : implementation file
//
#include "stdafx.h"
#include "mfcembed.h"
#include "PrintProgressDialog.h"
#include "BrowserView.h"
#include "nsIWebBrowser.h"
#include "nsIWebBrowserPrint.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CPrintProgressDialog dialog
class CDlgPrintListener : public nsIPrintListener
{
// Construction
public:
CDlgPrintListener(CPrintProgressDialog* aDlg);
NS_DECL_ISUPPORTS
NS_DECL_NSIPRINTLISTENER
void ClearDlg() { m_PrintDlg = NULL; } // weak reference
// Implementation
protected:
CPrintProgressDialog* m_PrintDlg;
};
NS_IMPL_ADDREF(CDlgPrintListener)
NS_IMPL_RELEASE(CDlgPrintListener)
NS_INTERFACE_MAP_BEGIN(CDlgPrintListener)
NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsIPrintListener)
NS_INTERFACE_MAP_ENTRY(nsIPrintListener)
NS_INTERFACE_MAP_END
CDlgPrintListener::CDlgPrintListener(CPrintProgressDialog* aDlg) :
m_PrintDlg(aDlg)
{
NS_INIT_ISUPPORTS();
//NS_ADDREF_THIS();
}
/* void OnStartPrinting (); */
NS_IMETHODIMP
CDlgPrintListener::OnStartPrinting()
{
if (m_PrintDlg) {
return m_PrintDlg->OnStartPrinting();
}
return NS_OK;
}
/* void OnProgressPrinting (in PRUint32 aProgress, in PRUint32 aProgressMax); */
NS_IMETHODIMP
CDlgPrintListener::OnProgressPrinting(PRUint32 aProgress, PRUint32 aProgressMax)
{
if (m_PrintDlg) {
return m_PrintDlg->OnProgressPrinting(aProgress, aProgressMax);
}
return NS_OK;
}
/* void OnEndPrinting (in PRUint32 aStatus); */
NS_IMETHODIMP
CDlgPrintListener::OnEndPrinting(PRUint32 aStatus)
{
if (m_PrintDlg) {
return m_PrintDlg->OnEndPrinting(aStatus);
}
return NS_OK;
}
/////////////////////////////////////////////////////////////////////////////
// CPrintProgressDialog dialog
CPrintProgressDialog::CPrintProgressDialog(nsIWebBrowser* aWebBrowser,
nsIDOMWindow* aDOMWin,
CWnd* pParent /*=NULL*/)
: CDialog(CPrintProgressDialog::IDD, pParent),
m_WebBrowser(aWebBrowser),
m_DOMWin(aDOMWin),
m_PrintListener(nsnull),
m_InModalMode(PR_FALSE)
{
//{{AFX_DATA_INIT(CPrintProgressDialog)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
CPrintProgressDialog::~CPrintProgressDialog()
{
CDlgPrintListener * pl = (CDlgPrintListener*)m_PrintListener.get();
if (pl) {
pl->ClearDlg();
}
}
void CPrintProgressDialog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CPrintProgressDialog)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CPrintProgressDialog, CDialog)
//{{AFX_MSG_MAP(CPrintProgressDialog)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CPrintProgressDialog message handlers
static void GetLocalRect(CWnd * aWnd, CRect& aRect, CWnd * aParent)
{
CRect wr;
aParent->GetWindowRect(wr);
CRect cr;
aParent->GetClientRect(cr);
aWnd->GetWindowRect(aRect);
int borderH = wr.Height() - cr.Height();
int borderW = (wr.Width() - cr.Width())/2;
aRect.top -= wr.top+borderH-borderW;
aRect.left -= wr.left+borderW;
aRect.right -= wr.left+borderW;
aRect.bottom -= wr.top+borderH-borderW;
}
BOOL CPrintProgressDialog::OnInitDialog()
{
CDialog::OnInitDialog();
CRect clientRect;
GetClientRect(&clientRect);
CRect titleRect;
GetLocalRect(GetDlgItem(IDC_PPD_DOC_TITLE_STATIC), titleRect, this);
CRect itemRect;
GetLocalRect(GetDlgItem(IDC_PPD_DOC_TXT), itemRect, this);
CRect progRect;
progRect.left = titleRect.left;
progRect.top = itemRect.top+itemRect.Height()+5;
progRect.right = clientRect.Width()-(2*titleRect.left);
progRect.bottom = progRect.top+titleRect.Height();
m_wndProgress.Create (WS_CHILD | WS_VISIBLE, progRect, this, -1);
m_wndProgress.SetPos (0);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
int CPrintProgressDialog::DoModal( )
{
PRBool doModal = PR_FALSE;
nsCOMPtr<nsIWebBrowserPrint> print(do_GetInterface(m_WebBrowser));
if(print)
{
m_PrintListener = new CDlgPrintListener(this); // constructor addrefs
if (m_PrintListener) {
// doModal will be set to false if the print job was cancelled
doModal = NS_SUCCEEDED(print->Print(m_DOMWin, nsnull, m_PrintListener)) == PR_TRUE;
}
}
if (doModal) {
m_InModalMode = PR_TRUE;
return CDialog::DoModal();
}
return 0;
}
/* void OnStartPrinting (); */
NS_IMETHODIMP
CPrintProgressDialog::OnStartPrinting()
{
return NS_OK;
}
/* void OnProgressPrinting (in PRUint32 aProgress, in PRUint32 aProgressMax); */
NS_IMETHODIMP
CPrintProgressDialog::OnProgressPrinting(PRUint32 aProgress, PRUint32 aProgressMax)
{
// Initialize the progress meter we we get the "zero" progress
// which also tells us the max progress
if (aProgress == 0) {
CWnd *pWnd = GetDlgItem(IDC_PPD_DOC_TXT);
if(pWnd)
pWnd->SetWindowText(m_URL);
m_wndProgress.SetRange(0, aProgressMax);
m_wndProgress.SetPos(0);
}
m_wndProgress.SetPos(aProgress);
RedrawWindow(NULL, NULL, RDW_INVALIDATE | RDW_UPDATENOW);
return NS_OK;
}
/* void OnEndPrinting (in PRUint32 aStatus); */
NS_IMETHODIMP
CPrintProgressDialog::OnEndPrinting(PRUint32 aStatus)
{
// Here we need to know whether we have gone "modal"
// because we could get notified here if the user cancels
// before we ever get a chance to go into the modal loop
if (m_InModalMode) {
EndDialog(1);
}
return NS_OK;
}
void CPrintProgressDialog::OnCancel()
{
nsCOMPtr<nsIWebBrowserPrint> print(do_GetInterface(m_WebBrowser));
if (print) {
print->Cancel();
}
CDialog::OnCancel();
}
void CPrintProgressDialog::SetURI(const char* aTitle)
{
m_URL = _T(aTitle);
}

@ -0,0 +1,70 @@
#if !defined(AFX_PRINTPROGRESSDIALOG_H__1BAF9B13_1875_11D5_9773_000064657374__INCLUDED_)
#define AFX_PRINTPROGRESSDIALOG_H__1BAF9B13_1875_11D5_9773_000064657374__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// PrintProgressDialog.h : header file
//
#include "nsIPrintListener.h"
class nsIWebBrowser;
class nsIDOMWindow;
class nsIPrintListener;
/////////////////////////////////////////////////////////////////////////////
// CPrintProgressDialog dialog
class CPrintProgressDialog : public CDialog
{
// Construction
public:
CPrintProgressDialog(nsIWebBrowser* aWebBrowser,
nsIDOMWindow* aDOMWin,
CWnd* pParent = NULL);
virtual ~CPrintProgressDialog();
virtual int DoModal( );
// Helper
void SetURI(const char* aTitle);
// same as nsIPrintListener
NS_IMETHOD OnStartPrinting(void);
NS_IMETHOD OnProgressPrinting(PRUint32 aProgress, PRUint32 aProgressMax);
NS_IMETHOD OnEndPrinting(PRUint32 aStatus);
// Dialog Data
//{{AFX_DATA(CPrintProgressDialog)
enum { IDD = IDD_PRINT_PROGRESS_DIALOG };
// NOTE: the ClassWizard will add data members here
//}}AFX_DATA
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CPrintProgressDialog)
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
//}}AFX_VIRTUAL
// Implementation
protected:
CProgressCtrl m_wndProgress;
CString m_URL;
nsIWebBrowser* m_WebBrowser;
nsIDOMWindow* m_DOMWin;
nsCOMPtr<nsIPrintListener> m_PrintListener;
BOOL m_InModalMode;
// Generated message map functions
//{{AFX_MSG(CPrintProgressDialog)
virtual BOOL OnInitDialog();
virtual void OnCancel();
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_PRINTPROGRESSDIALOG_H__1BAF9B13_1875_11D5_9773_000064657374__INCLUDED_)

@ -83,6 +83,11 @@
#include "nsIEmbeddingSiteWindow.h"
#include "nsIWebBrowserFind.h"
// Printing
#include "nsIPrintOptions.h"
#include "nsIWebBrowserPrint.h"
#include "nsIDOMWindow.h"
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

@ -42,6 +42,7 @@
#define IDC_PAN_DOWNLEFT 167
#define IDC_PAN_UPRIGHT 168
#define IDC_PAN_DOWNRIGHT 169
#define IDD_PRINT_PROGRESS_DIALOG 170
#define ID_URL_BAR 1001
#define ID_PROG_BAR 1002
#define IDC_PROMPT_ANSWER 1003
@ -92,6 +93,8 @@
#define IDC_EDIT_MEMORY_CACHE 1056
#define IDC_ERRORS 1058
#define IDC_VERSION 1059
#define IDC_PPD_DOC_TXT 1020
#define IDC_PPD_DOC_TITLE_STATIC 1021
#define IDC_CONTAINER 1110
#define IDC_EDIT_TOOLBAR_BACKGROUND 1111
#define IDC_EDIT_SETTINGS_DIR 1111
@ -107,7 +110,7 @@
#define IDC_BUTTON_CONFIG 1119
#define IDC_KMELEON_HOME 1120
#define IDC_KMELEON_FORUM 1121
#define IDC_FIND_EDIT 1152
#define IDC_FIND_EDIT 1122
#define ID_NAV_BACK 32773
#define ID_NAV_FORWARD 32774
#define ID_NAV_HOME 32775
@ -140,9 +143,9 @@
#ifdef APSTUDIO_INVOKED
#ifndef APSTUDIO_READONLY_SYMBOLS
#define _APS_3D_CONTROLS 1
#define _APS_NEXT_RESOURCE_VALUE 164
#define _APS_NEXT_COMMAND_VALUE 32791
#define _APS_NEXT_CONTROL_VALUE 1062
#define _APS_NEXT_RESOURCE_VALUE 171
#define _APS_NEXT_COMMAND_VALUE 32801
#define _APS_NEXT_CONTROL_VALUE 1023
#define _APS_NEXT_SYMED_VALUE 101
#endif
#endif

Loading…
Cancel
Save