diff options
Diffstat (limited to 'fpdfsdk/include/javascript/JS_Console.h')
-rw-r--r-- | fpdfsdk/include/javascript/JS_Console.h | 476 |
1 files changed, 238 insertions, 238 deletions
diff --git a/fpdfsdk/include/javascript/JS_Console.h b/fpdfsdk/include/javascript/JS_Console.h index da842bdde7..f43513566c 100644 --- a/fpdfsdk/include/javascript/JS_Console.h +++ b/fpdfsdk/include/javascript/JS_Console.h @@ -1,239 +1,239 @@ -// Copyright 2014 PDFium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-
-#ifndef _JS_CONSOLE_H_
-#define _JS_CONSOLE_H_
-
-#include "../res/resource.h"
-
-#define WST_NONE 0x00 // No size changed
-#define WST_LEFT 0x01 // size to left
-#define WST_TOP 0x02 // size to top
-#define WST_RIGHT 0x04 // size to right
-#define WST_BOTTOM 0x08 // size to bottom
-#define WST_TOPLEFT (WST_TOP|WST_LEFT) // size to top & left
-#define WST_TOPRIGHT (WST_TOP|WST_RIGHT) // size to top & right
-#define WST_BOTTOMRIGHT (WST_BOTTOM|WST_RIGHT) // size to bottom & right
-#define WST_BOTTOMLEFT (WST_BOTTOM|WST_LEFT) // size to bottom & right
-
-#ifndef IDC_DLGSIZEBOX
-#define IDC_DLGSIZEBOX 50
-#endif /* IDC_DLGSIZEBOX */
-
-enum { m_idSizeIcon = IDC_DLGSIZEBOX };
-enum { // possible Control reSize Type
- CST_NONE = 0,
- CST_RESIZE, // NOMOVE + SIZE, add all delta-size of dlg to control
- CST_REPOS, // MOVE(absolutely) + NOSIZE, move control's pos by delta-size
- CST_RELATIVE, // MOVE(proportional) + NOSIZE, keep control always at a relative pos
- CST_ZOOM, // MOVE + SIZE (both are automatically proportional)
- CST_DELTA_ZOOM // MOVE(proportional, set manually) + SIZE(proportional, set manuall)
-};
-
-// contained class to hold item state
-//
-class CJS_ItemCtrl
-{
-public:
- UINT m_nID;
- UINT m_stxLeft : 4; // when left resizing ...
- UINT m_stxRight : 4; // when right resizing ...
- UINT m_styTop : 4; // when top resizing ...
- UINT m_styBottom : 4; // when bottom resizing ...
- UINT m_bFlickerFree : 1;
- UINT m_bInvalidate : 1; // Invalidate ctrl's rect(eg. no-automatical update for static when resize+move)
- UINT m_r0 : 14;
- CRect m_wRect;
- double m_xRatio, m_cxRatio;
- double m_yRatio, m_cyRatio;
-
-protected:
- void Assign(const CJS_ItemCtrl& src);
-
-public:
- CJS_ItemCtrl();
- CJS_ItemCtrl(const CJS_ItemCtrl& src);
-
- HDWP OnSize(HDWP hdwp, int sizeType, CRect *pnCltRect, CRect *poCltRect, CRect *pR0, CWnd *pDlg);
-
- CJS_ItemCtrl& operator=(const CJS_ItemCtrl& src);
-};
-
-class CJS_ResizeDlg : public CDialog
-{
-// DECLARE_DYNAMIC(CJS_ResizeDlg)
-public:
- CJS_ResizeDlg(UINT nID,CWnd *pParentWnd = NULL);
- virtual ~CJS_ResizeDlg();
-
-
-public:
- std::vector<CJS_ItemCtrl> m_Items; // array of controlled items
- CRect m_cltRect, m_cltR0;
- int m_xMin, m_yMin;
- int m_xSt, m_ySt; //step?
- UINT m_nDelaySide; //drag side of window
- CStatic m_wndSizeIcon; // size icon window
-
-protected:
- void AddControl( UINT nID, int xl, int xr, int yt, int yb, int bFlickerFree = 0,
- double xRatio = -1.0, double cxRatio = -1.0,
- double yRatio = -1.0, double cyRatio = -1.0 );
- void AllowSizing(int xst, int yst);
- void HideSizeIcon(void);
- virtual BOOL OnInitDialog();
-
- void OnSizing(UINT nSide, LPRECT lpRect);
- void OnSize(UINT nType, int cx, int cy);
- void OnGetMinMaxInfo(MINMAXINFO *pmmi);
- BOOL OnEraseBkgnd(CDC* pDC);
-
-public:
- int UpdateControlRect(UINT nID, CRect *pnr);
-};
-
-
-//------------------------CIconListBox for CWndElementList-------------------------------------
-
-class CIconListBox : public CListBox
-{
-public:
- CIconListBox();
- virtual ~CIconListBox();
-
-public:
- int InsertString(int nIndex, LPCWSTR lpszItem , int nImage);
- virtual void ResetContent();
- virtual void GetText(int nIndex, CString& rString);
-
- virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
- void MeasureItem(LPMEASUREITEMSTRUCT lpMeasureItemStruct);
- int CompareItem(LPCOMPAREITEMSTRUCT lpCompareItemStruct);
-
-protected:
- // Generated message map functions
- //{{AFX_MSG(CIconListBox)
- afx_msg void OnMouseMove(UINT nFlags, CPoint point);
- //}}AFX_MSG
- DECLARE_MESSAGE_MAP()
-
-protected:
- struct ItemDatas
- {
- CString csText;
- int nImage;
- };
-};
-//----------------------------------CWndElementList--------------------------------------------
-#define IDC_LIST_JS_ELEMENT 10070
-
-#define ELEMENT_LIST_WIDTH 140
-#define ELEMENT_LIST_HEIGHT 180
-#define ELEMENT_LIST_TOP_OFFSET 13
-
-#define ELEMENT_TYPE_NAME 0
-#define ELEMENT_TYPE_CONST 1
-#define ELEMENT_TYPE_FUN 2
-#define ELEMENT_TYPE_PRO 3
-
-class CWndElementList : public CWnd
-{
-public:
- CWndElementList();
- virtual ~CWndElementList();
-
-public:
- virtual void OnSize(UINT nType, int cx, int cy);
- virtual BOOL Create(CWnd* pParentWnd);
- virtual BOOL ShowWindow(int nCmdShow);
- void RemoveAllElement();
- void SetElementList(LPCWSTR* pElement, int* pType , int iCount);
- void AddElement(CFX_WideString csValue , int nType);
- BOOL GetElementSel(CString &csElement);
- BOOL SelectNext();
- BOOL SelectPrevious();
- BOOL SelectFirst();
- BOOL SelectLast();
- BOOL SelectNextPage();
- BOOL SelectPreviousPage();
- int GetListHeight();
-
-protected:
- // Generated message map functions
- //{{AFX_MSG(CWndElementList)
- afx_msg void OnPaint();
- afx_msg BOOL OnNcActivate(BOOL bActive);
- afx_msg void OnSelJSElement();
- afx_msg void OnDblclkJSElement();
- afx_msg void OnDestroy();
- //}}AFX_MSG
- DECLARE_MESSAGE_MAP()
-protected:
- CIconListBox m_ListBox;
- BOOL m_bBlock;
-};
-
-///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
-// CJS_ConsoleDlg 对话框
-class CJS_ConsoleDlg : public CJS_ResizeDlg
-{
- DECLARE_DYNAMIC(CJS_ConsoleDlg)
-
-public:
- CJS_ConsoleDlg(CReader_App* pApp, CWnd* pParent);
- virtual ~CJS_ConsoleDlg();
-
- enum { IDD = IDD_JS_CONSOLE };
-
- void Create();
-
- void AppendConsoleText(const CFX_WideString& swText);
- void SetConsoleText(const CFX_WideString& swText);
- CFX_WideString GetConsoleText() const;
- CFX_WideString GetScriptText() const;
-
- BOOL ResetElementList(LPCWSTR lpstrRef);
- IFXJS_Runtime* GetJSRuntime();
-
-protected:
- virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持
-
-protected:
- virtual BOOL OnInitDialog();
- virtual void OnCancel();
-
- virtual BOOL PreTranslateMessage(MSG* pMsg);
-
-protected:
- // Generated message map functions
- //{{AFX_MSG(CJS_ConsoleDlg)
- afx_msg void OnBnClickedClear();
- afx_msg void OnBnClickedOk();
- afx_msg void OnBnClickTips();
- afx_msg void OnSizing(UINT nSide, LPRECT lpRect);
- afx_msg void OnSize(UINT nType, int cx, int cy);
- afx_msg void OnGetMinMaxInfo(MINMAXINFO *pmmi);
- afx_msg BOOL OnEraseBkgnd(CDC* pDC);
- afx_msg void OnShowWindow(BOOL bShow, UINT nStatus);
-
- afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
- afx_msg void OnChangeScriptEdit(WPARAM wParam , LPARAM lParam);
- afx_msg void OnMove(int x , int y);
- public:
- virtual int DoModal();
- //}}AFX_MSG
- DECLARE_MESSAGE_MAP()
-
-public:
- CGW_LineNumberEdit m_edtSC;
- BOOL m_bTips;
- const UINT m_uTextlimited;
- FX_HGLOBAL m_hGlobal;
- CReader_App * m_pApp;
- CWndElementList m_WndElementList;
-};
-
+// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef _JS_CONSOLE_H_ +#define _JS_CONSOLE_H_ + +#include "../res/resource.h" + +#define WST_NONE 0x00 // No size changed +#define WST_LEFT 0x01 // size to left +#define WST_TOP 0x02 // size to top +#define WST_RIGHT 0x04 // size to right +#define WST_BOTTOM 0x08 // size to bottom +#define WST_TOPLEFT (WST_TOP|WST_LEFT) // size to top & left +#define WST_TOPRIGHT (WST_TOP|WST_RIGHT) // size to top & right +#define WST_BOTTOMRIGHT (WST_BOTTOM|WST_RIGHT) // size to bottom & right +#define WST_BOTTOMLEFT (WST_BOTTOM|WST_LEFT) // size to bottom & right + +#ifndef IDC_DLGSIZEBOX +#define IDC_DLGSIZEBOX 50 +#endif /* IDC_DLGSIZEBOX */ + +enum { m_idSizeIcon = IDC_DLGSIZEBOX }; +enum { // possible Control reSize Type + CST_NONE = 0, + CST_RESIZE, // NOMOVE + SIZE, add all delta-size of dlg to control + CST_REPOS, // MOVE(absolutely) + NOSIZE, move control's pos by delta-size + CST_RELATIVE, // MOVE(proportional) + NOSIZE, keep control always at a relative pos + CST_ZOOM, // MOVE + SIZE (both are automatically proportional) + CST_DELTA_ZOOM // MOVE(proportional, set manually) + SIZE(proportional, set manuall) +}; + +// contained class to hold item state +// +class CJS_ItemCtrl +{ +public: + UINT m_nID; + UINT m_stxLeft : 4; // when left resizing ... + UINT m_stxRight : 4; // when right resizing ... + UINT m_styTop : 4; // when top resizing ... + UINT m_styBottom : 4; // when bottom resizing ... + UINT m_bFlickerFree : 1; + UINT m_bInvalidate : 1; // Invalidate ctrl's rect(eg. no-automatical update for static when resize+move) + UINT m_r0 : 14; + CRect m_wRect; + double m_xRatio, m_cxRatio; + double m_yRatio, m_cyRatio; + +protected: + void Assign(const CJS_ItemCtrl& src); + +public: + CJS_ItemCtrl(); + CJS_ItemCtrl(const CJS_ItemCtrl& src); + + HDWP OnSize(HDWP hdwp, int sizeType, CRect *pnCltRect, CRect *poCltRect, CRect *pR0, CWnd *pDlg); + + CJS_ItemCtrl& operator=(const CJS_ItemCtrl& src); +}; + +class CJS_ResizeDlg : public CDialog +{ +// DECLARE_DYNAMIC(CJS_ResizeDlg) +public: + CJS_ResizeDlg(UINT nID,CWnd *pParentWnd = NULL); + virtual ~CJS_ResizeDlg(); + + +public: + std::vector<CJS_ItemCtrl> m_Items; // array of controlled items + CRect m_cltRect, m_cltR0; + int m_xMin, m_yMin; + int m_xSt, m_ySt; //step? + UINT m_nDelaySide; //drag side of window + CStatic m_wndSizeIcon; // size icon window + +protected: + void AddControl( UINT nID, int xl, int xr, int yt, int yb, int bFlickerFree = 0, + double xRatio = -1.0, double cxRatio = -1.0, + double yRatio = -1.0, double cyRatio = -1.0 ); + void AllowSizing(int xst, int yst); + void HideSizeIcon(void); + virtual BOOL OnInitDialog(); + + void OnSizing(UINT nSide, LPRECT lpRect); + void OnSize(UINT nType, int cx, int cy); + void OnGetMinMaxInfo(MINMAXINFO *pmmi); + BOOL OnEraseBkgnd(CDC* pDC); + +public: + int UpdateControlRect(UINT nID, CRect *pnr); +}; + + +//------------------------CIconListBox for CWndElementList------------------------------------- + +class CIconListBox : public CListBox +{ +public: + CIconListBox(); + virtual ~CIconListBox(); + +public: + int InsertString(int nIndex, LPCWSTR lpszItem , int nImage); + virtual void ResetContent(); + virtual void GetText(int nIndex, CString& rString); + + virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct); + void MeasureItem(LPMEASUREITEMSTRUCT lpMeasureItemStruct); + int CompareItem(LPCOMPAREITEMSTRUCT lpCompareItemStruct); + +protected: + // Generated message map functions + //{{AFX_MSG(CIconListBox) + afx_msg void OnMouseMove(UINT nFlags, CPoint point); + //}}AFX_MSG + DECLARE_MESSAGE_MAP() + +protected: + struct ItemDatas + { + CString csText; + int nImage; + }; +}; +//----------------------------------CWndElementList-------------------------------------------- +#define IDC_LIST_JS_ELEMENT 10070 + +#define ELEMENT_LIST_WIDTH 140 +#define ELEMENT_LIST_HEIGHT 180 +#define ELEMENT_LIST_TOP_OFFSET 13 + +#define ELEMENT_TYPE_NAME 0 +#define ELEMENT_TYPE_CONST 1 +#define ELEMENT_TYPE_FUN 2 +#define ELEMENT_TYPE_PRO 3 + +class CWndElementList : public CWnd +{ +public: + CWndElementList(); + virtual ~CWndElementList(); + +public: + virtual void OnSize(UINT nType, int cx, int cy); + virtual BOOL Create(CWnd* pParentWnd); + virtual BOOL ShowWindow(int nCmdShow); + void RemoveAllElement(); + void SetElementList(LPCWSTR* pElement, int* pType , int iCount); + void AddElement(CFX_WideString csValue , int nType); + BOOL GetElementSel(CString &csElement); + BOOL SelectNext(); + BOOL SelectPrevious(); + BOOL SelectFirst(); + BOOL SelectLast(); + BOOL SelectNextPage(); + BOOL SelectPreviousPage(); + int GetListHeight(); + +protected: + // Generated message map functions + //{{AFX_MSG(CWndElementList) + afx_msg void OnPaint(); + afx_msg BOOL OnNcActivate(BOOL bActive); + afx_msg void OnSelJSElement(); + afx_msg void OnDblclkJSElement(); + afx_msg void OnDestroy(); + //}}AFX_MSG + DECLARE_MESSAGE_MAP() +protected: + CIconListBox m_ListBox; + BOOL m_bBlock; +}; + +/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// CJS_ConsoleDlg 对话框 +class CJS_ConsoleDlg : public CJS_ResizeDlg +{ + DECLARE_DYNAMIC(CJS_ConsoleDlg) + +public: + CJS_ConsoleDlg(CReader_App* pApp, CWnd* pParent); + virtual ~CJS_ConsoleDlg(); + + enum { IDD = IDD_JS_CONSOLE }; + + void Create(); + + void AppendConsoleText(const CFX_WideString& swText); + void SetConsoleText(const CFX_WideString& swText); + CFX_WideString GetConsoleText() const; + CFX_WideString GetScriptText() const; + + BOOL ResetElementList(LPCWSTR lpstrRef); + IFXJS_Runtime* GetJSRuntime(); + +protected: + virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持 + +protected: + virtual BOOL OnInitDialog(); + virtual void OnCancel(); + + virtual BOOL PreTranslateMessage(MSG* pMsg); + +protected: + // Generated message map functions + //{{AFX_MSG(CJS_ConsoleDlg) + afx_msg void OnBnClickedClear(); + afx_msg void OnBnClickedOk(); + afx_msg void OnBnClickTips(); + afx_msg void OnSizing(UINT nSide, LPRECT lpRect); + afx_msg void OnSize(UINT nType, int cx, int cy); + afx_msg void OnGetMinMaxInfo(MINMAXINFO *pmmi); + afx_msg BOOL OnEraseBkgnd(CDC* pDC); + afx_msg void OnShowWindow(BOOL bShow, UINT nStatus); + + afx_msg void OnLButtonDown(UINT nFlags, CPoint point); + afx_msg void OnChangeScriptEdit(WPARAM wParam , LPARAM lParam); + afx_msg void OnMove(int x , int y); + public: + virtual int DoModal(); + //}}AFX_MSG + DECLARE_MESSAGE_MAP() + +public: + CGW_LineNumberEdit m_edtSC; + BOOL m_bTips; + const UINT m_uTextlimited; + FX_HGLOBAL m_hGlobal; + CReader_App * m_pApp; + CWndElementList m_WndElementList; +}; + #endif //_JS_CONSOLE_H_
\ No newline at end of file |