亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? newmenu.h

?? 方便的串口監(jiān)視工具
?? H
字號(hào):
/****************************************************************************
 *																			*		 
 *								GuiToolKit  								*	
 *							 (MFC extension)								*			 
 * Created by Francisco Campos G. www.beyondata.com fcampos@beyondata.com	*
 *--------------------------------------------------------------------------*		   
 *																			*
 * This program is free software;so you are free to use it any of your		*
 * applications (Freeware, Shareware, Commercial),but leave this header		*
 * intact.																	*
 *																			*
 * These files are provided "as is" without warranty of any kind.			*
 *																			*
 *			       GuiToolKit is forever FREE CODE !!!!!					*
 *																			*
 *--------------------------------------------------------------------------*
 *																			*
 * Bug Fixes and improvements : (Add your name)								*
 * -Francisco Campos														*				
 *																			*	
 ****************************************************************************/


//------------------------------------------------------------------------------
// File    : NewMenu.h 
// Version : 1.0
// Date    : Mai 2002
// Author  : Bruno Podetti
// Email   : Podetti@gmx.net
// Systems : VC6.0 and VC7.0 (Run under (Window 98/ME), Windows Nt 2000/XP)
//
// Bug Fixes and portions of code from previous version supplied by:
//
// Brent Corkum, Ben Ashley, Girish Bharadwaj, Jean-Edouard Lachand-Robert,
// Robert Edward Caldecott, Kenny Goers, Leonardo Zide, Stefan Kuhr, 
// Reiner Jung, Martin Vladic, Kim Yoo Chul, Oz Solomonovich, Tongzhe Cui, 
// Stephane Clog, Warren Stevens, Damir Valiulin
// 
// You are free to use/modify this code but leave this header intact.
// This class is public domain so you are free to use it any of your 
// applications (Freeware, Shareware, Commercial). 
// All I ask is that you let me know so that if you have a real winner I can
// brag to my buddies that some of my code is in your app. I also wouldn't 
// mind if you sent me a copy of your application since I like to play with
// new stuff.
//------------------------------------------------------------------------------



#ifndef __CNewMenu_H_
#define __CNewMenu_H_

#pragma warning(push)
#pragma warning(disable : 4211)

#include <afxtempl.h>
#include <afxpriv.h>
#include "GuiLib.h" 
// Flagdefinitions 
#define MFT_TITLE       0x0001
#define MFT_TOP_TITLE   0x0000
#define MFT_SIDE_TITLE  0x0002
#define MFT_GRADIENT    0x0004
#define MFT_SUNKEN      0x0008
#define MFT_LINE        0x0010
#define MFT_ROUND       0x0020
#define MFT_CENTER      0x0040

// Typedefinition for compatibility to MFC 7.0
#ifndef DWORD_PTR
typedef DWORD DWORD_PTR, *PDWORD_PTR;
#endif

#ifndef ULONG_PTR
typedef unsigned long ULONG_PTR, *PULONG_PTR;
#endif

#ifndef LONG_PTR
typedef long LONG_PTR, *PLONG_PTR;
#endif

/////////////////////////////////////////////////////////////////////////////
// Forwarddeclaration for drawing purpose
#include "MenuBar.h"
class CMenuTheme;
/////////////////////////////////////////////////////////////////////////////
// CNewMenuItemData menu item data for drawing

class CNewMenuItemData : public CObject
{
  DECLARE_DYNCREATE(CNewMenuItemData)

public:
  CNewMenuItemData();
  virtual ~CNewMenuItemData();

public:
  LPCTSTR GetString();
  void SetString(LPCTSTR szMenuText);

#if defined(_DEBUG) || defined(_AFXDLL)
  // Diagnostic Support
  virtual void AssertValid() const;
  virtual void Dump(CDumpContext& dc) const;
#endif

public:
  CString m_szMenuText;

  UINT m_nTitleFlags;
  UINT m_nFlags;
  UINT m_nID;
  UINT m_nSyncFlag;

  int m_nxOffset;
  int m_nMenuIconNormal;

  CImageList* m_pBitmap;

  void* m_pData;
};

/////////////////////////////////////////////////////////////////////////////
// CNewMenu the new menu class

class GUILIBDLLEXPORT  CNewMenu : public CMenu
{
  friend class CNewMenuHook;

  DECLARE_DYNCREATE(CNewMenu)

public:
  // how the menu's are drawn, either original or XP style
  typedef enum 
  { 
    STYLE_ORIGINAL,
    STYLE_ORIGINAL_NOBORDER,

    STYLE_XP,
    STYLE_XP_NOBORDER,

    STYLE_SPECIAL,
    STYLE_SPECIAL_NOBORDER
  } EDrawStyle;

  // how seperators are handled when removing a menu (Tongzhe Cui)
  typedef enum {NONE, HEAD, TAIL, BOTH} ESeperator;

public:
  CNewMenu(HMENU hParent=0); 
  virtual ~CNewMenu();

  // Functions for loading and applying bitmaps to menus (see example application)
  virtual BOOL LoadMenu(HMENU hMenu);
  virtual BOOL LoadMenu(LPCTSTR lpszResourceName);
  virtual BOOL LoadMenu(int nResource);

  BOOL LoadToolBar(WORD* pToolInfo, COLORREF crTransparent=CLR_NONE);
  BOOL LoadToolBar(LPCTSTR lpszResourceName);
  BOOL LoadToolBar(UINT nToolBar);
  BOOL LoadToolBars(const UINT *arID,int n);

  void AddFromToolBar(CToolBar* pToolBar, int nResourceID);
  BOOL LoadFromToolBar(UINT nID,UINT nToolBar,int& xoffset);
  BOOL AddBitmapToImageList(CImageList *list,UINT nResourceID);

  static HBITMAP LoadSysColorBitmap(int nResourceId);
  // custom check mark bitmaps
  void LoadCheckmarkBitmap(int unselect, int select); 

  // functions for appending a menu option, use the AppendMenu call
  BOOL AppendMenu(UINT nFlags,UINT nIDNewItem=0,LPCTSTR lpszNewItem=NULL,int nIconNormal=-1);
  BOOL AppendMenu(UINT nFlags,UINT nIDNewItem,LPCTSTR lpszNewItem,CImageList *il,int xoffset);
  BOOL AppendMenu(UINT nFlags,UINT nIDNewItem,LPCTSTR lpszNewItem,CBitmap *bmp);

  BOOL AppendODMenu(LPCTSTR lpstrText,UINT nFlags = MF_OWNERDRAW,UINT nID = 0,int nIconNormal = -1);  
  BOOL AppendODMenu(LPCTSTR lpstrText,UINT nFlags,UINT nID,CImageList *il,int xoffset);

  // for appending a popup menu (see example application)
  CNewMenu* AppendODPopupMenu(LPCTSTR lpstrText);

  // functions for inserting a menu option, use the InsertMenu call (see above define)
  BOOL InsertMenu(UINT nPosition,UINT nFlags,UINT nIDNewItem=0,LPCTSTR lpszNewItem=NULL,int nIconNormal=-1);
  BOOL InsertMenu(UINT nPosition,UINT nFlags,UINT nIDNewItem,LPCTSTR lpszNewItem,CImageList *il,int xoffset);
  BOOL InsertMenu(UINT nPosition,UINT nFlags,UINT nIDNewItem,LPCTSTR lpszNewItem,CBitmap *bmp);

  BOOL InsertODMenu(UINT nPosition,LPCTSTR lpstrText,UINT nFlags = MF_OWNERDRAW,UINT nID = 0,int nIconNormal = -1);  
  BOOL InsertODMenu(UINT nPosition,LPCTSTR lpstrText,UINT nFlags,UINT nID,CImageList *il,int xoffset);

  // functions for modifying a menu option, use the ModifyODMenu call (see above define)
  BOOL ModifyODMenu(LPCTSTR lpstrText,UINT nID=0,int nIconNormal=-1);
  BOOL ModifyODMenu(LPCTSTR lpstrText,UINT nID,CImageList *il,int xoffset);
  BOOL ModifyODMenu(LPCTSTR lpstrText,UINT nID,CBitmap *bmp);
  BOOL ModifyODMenu(LPCTSTR lpstrText,LPCTSTR OptionText,int nIconNormal);
  // use this method for adding a solid/hatched colored square beside a menu option
  // courtesy of Warren Stevens
  BOOL ModifyODMenu(LPCTSTR lpstrText,UINT nID,COLORREF fill,COLORREF border,int hatchstyle=-1);

  // for deleting and removing menu options
  BOOL  DeleteMenu(UINT uiId,UINT nFlags);
  BOOL  RemoveMenu(UINT uiId,UINT nFlags);
  int RemoveMenu(LPCTSTR pText, ESeperator sPos=CNewMenu::NONE);

  // function for retrieving and setting a menu options text (use this function
  // because it is ownerdrawn)
  BOOL GetMenuText(UINT id,CString &string,UINT nFlags = MF_BYPOSITION);
  BOOL SetMenuText(UINT id,CString string, UINT nFlags = MF_BYPOSITION);

  // Getting a submenu from it's name or position
  CMenu* GetSubMenu (LPCTSTR lpszSubMenuName);
  CMenu* GetSubMenu (int nPos);
  int GetMenuPosition(LPCTSTR pText);

  // Destoying
  virtual BOOL DestroyMenu();

  // Drawing: 
  // Draw an item
  virtual void DrawItem(LPDRAWITEMSTRUCT lpDIS);
  // Measure an item  
  virtual void MeasureItem(LPMEASUREITEMSTRUCT lpMIS);
  // Draw title of the menu
  virtual void DrawTitle(LPDRAWITEMSTRUCT lpDIS,BOOL bIsMenuBar);
  // Erase the Background of the menu
  virtual BOOL EraseBkgnd(HWND hWnd,HDC hDC);

  BOOL SetMenuTitle(LPCTSTR pTitle,UINT nTitleFlags=MFT_TOP_TITLE);
  BOOL RemoveMenuTitle();

  // Function to set how menu is drawn, either original or XP style
  static int  GetMenuDrawMode();
  static void SetMenuDrawMode(UINT mode);
  // Function to set how disabled items are drawn 
  //(mode=FALSE means they are not drawn selected)
  static BOOL SetSelectDisableMode(BOOL mode);
  static BOOL GetSelectDisableMode();

  // Static functions used for handling menu's in the mainframe
  static LRESULT FindKeyboardShortcut(UINT nChar,UINT nFlags,CMenu *pMenu);
  static BOOL OnMeasureItem(const MSG* pMsg);
  static void OnInitMenuPopup(HWND hWnd, CMenu* pPopupMenu, UINT nIndex, BOOL bSysMenu);

  static CMenu* FindPopupMenuFromID(CMenu* pMenu, UINT nID);
  static CMenu* FindPopupMenuFromID(HMENU hMenu, UINT nID);

  static CMenu* FindPopupMenuFromIDData(CMenu* pMenu, UINT nID, ULONG_PTR pData);
  static CMenu* FindPopupMenuFromIDData(HMENU hMenu, UINT nID, ULONG_PTR pData);

  virtual void OnInitMenuPopup();
  virtual BOOL OnUnInitPopupMenu();

  // Customizing:
  // Set icon size
  void SetIconSize (int, int); 
  // set the color in the bitmaps that is the background transparent color
  COLORREF SetBitmapBackground(COLORREF newColor);
  COLORREF GetBitmapBackground(); 

  CRect GetLastActiveMenuRect();
  HMENU GetParent();
  BOOL IsPopup();


// Miscellaneous Protected Member functions
protected:
  BOOL Replace(UINT nID,UINT nNewID);

  static BOOL IsNewShell();
  BOOL IsMenuBar(HMENU hMenu=NULL);

  void SetLastMenuRect(HDC hDC, LPRECT pRect);

  CNewMenuItemData* FindMenuItem(UINT nID);
  CNewMenu* FindMenuOption(int nId, int& nLoc);
  CNewMenu* FindMenuOption(LPCTSTR lpstrText, int& nLoc);

  CNewMenu* FindAnotherMenuOption(int nId,int& nLoc,CArray<CNewMenu*,CNewMenu*>&newSubs,CArray<int,int&>&newLocs);

  void DrawCheckMark(CDC* pDC,int x,int y,COLORREF color);
  void DrawRadioDot(CDC* pDC,int x,int y,COLORREF color);
  CNewMenuItemData* NewODMenu(UINT pos,UINT nFlags,UINT nID,LPCTSTR string);

  void SynchronizeMenu();
  void InitializeMenuList(int value);
  void DeleteMenuList();
  
  CNewMenuItemData* FindMenuList(UINT nID);

  void DrawSpecial_OldStyle(CDC* pDC, LPCRECT pRect, UINT nID, DWORD dwStyle);
  void DrawSpecial_WinXP(CDC* pDC, LPCRECT pRect, UINT nID, DWORD dwStyle);
  void DrawSpecialCharStyle(CDC* pDC, LPCRECT pRect, TCHAR Sign, DWORD dwStyle);
  void DrawSpecialChar(CDC* pDC, LPCRECT pRect, TCHAR Sign, BOOL bBold);

  void DrawMenuTitle(LPDRAWITEMSTRUCT lpDIS, BOOL bIsMenuBar);

  // Measure an item
  void MeasureItem_OldStyle( LPMEASUREITEMSTRUCT lpMIS, BOOL bIsMenuBar); 
  void DrawItem_OldStyle (LPDRAWITEMSTRUCT lpDIS, BOOL bIsMenubar);
  BOOL Draw3DCheckmark(CDC* dc, const CRect& rc,HBITMAP hbmCheck, DWORD dwStyle);

  void MeasureItem_WinXP( LPMEASUREITEMSTRUCT lpMIS, BOOL bIsMenuBar); 
  void DrawItem_WinXP (LPDRAWITEMSTRUCT lpDIS, BOOL bIsMenuBar);

  void DrawItem_SpecialStyle (LPDRAWITEMSTRUCT lpDIS, BOOL bIsMenubar);

  BOOL ImageListDuplicate(CImageList* il,int xoffset,CImageList* newlist);
  static WORD NumBitmapColors(LPBITMAPINFOHEADER lpBitmap);
  void ColorBitmap(CDC* pDC, CBitmap& bmp,CSize size,COLORREF fill,COLORREF border,int hatchstyle=-1);
  void SetMBar(CMenuButton *pBar);
// Member Variables
public:
  static int cCOLOR_MENUBAR;
 
protected: 
  // Stores list of menu items
  CTypedPtrArray<CPtrArray, CNewMenuItemData*> m_MenuList;   
  // When loading an owner-drawn menu using a Resource, CNewMenu must keep track of
  // the popup menu's that it creates. Warning, this list *MUST* be destroyed
  // last item first :)
  // Stores list of sub-menus
  CTypedPtrArray<CPtrArray, HMENU>  m_SubMenus;
  // Stores a list of all CNewMenu's ever created 
  static CTypedPtrArray<CPtrArray, HMENU>  m_AllSubMenus;
  static BOOL m_bSelectDisable;
  static CMenuTheme* m_pActMenuDrawing;
  	
  int m_iconX;
  int m_iconY;

  COLORREF m_bitmapBackground;

  CImageList* checkmaps;
  BOOL checkmapsshare;

  int m_selectcheck;
  int m_unselectcheck;

  BOOL m_bDynIcons;

  HMENU m_hParentMenu;

  BOOL m_bIsPopupMenu;

  CRect m_LastActiveMenuRect;

  DWORD m_dwOpenMenu;
};


#pragma warning(pop)

#endif // __CNewMenu_H_

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美怡红院视频| 国产黄色91视频| 欧美精品久久一区| 天天色 色综合| 日韩欧美高清一区| 国产伦精品一区二区三区在线观看| 欧美电影免费观看高清完整版在线 | 亚洲国产成人高清精品| 欧美伊人久久久久久午夜久久久久| 亚洲一区在线电影| 久久影视一区二区| 大桥未久av一区二区三区中文| 国产精品短视频| 欧美日韩国产精选| 国产一区日韩二区欧美三区| 久久久久久久久久久黄色| 99久久免费视频.com| 亚洲一区二区欧美激情| 精品福利av导航| av网站一区二区三区| 亚洲成人免费影院| 久久伊人蜜桃av一区二区| av电影天堂一区二区在线观看| 亚洲制服丝袜av| 日韩欧美第一区| 99视频在线精品| 日本美女一区二区三区视频| 国产亚洲欧洲997久久综合| 色婷婷一区二区三区四区| 天堂va蜜桃一区二区三区| 国产欧美日韩精品一区| 欧美精品色一区二区三区| 国产精品亚洲午夜一区二区三区| 一区二区三区四区在线播放| 精品久久久久av影院| 色999日韩国产欧美一区二区| 美女视频黄 久久| 亚洲乱码日产精品bd| 精品国产99国产精品| 日本道精品一区二区三区| 激情综合色播五月| 亚洲综合在线第一页| 国产日韩欧美麻豆| 日韩一级片在线播放| 91在线视频在线| 国产一区二区在线视频| 亚洲成人黄色小说| 亚洲色图都市小说| 国产午夜精品一区二区三区四区| 欧美电影在线免费观看| 一本色道久久综合亚洲精品按摩| 国产综合久久久久影院| 亚洲成人免费视频| 亚洲精品中文在线观看| 国产精品色呦呦| 日韩精品一区二区三区视频在线观看 | 一区二区不卡在线播放| 欧美国产日韩精品免费观看| 日韩一二三区不卡| 欧美视频在线一区二区三区 | 成人免费三级在线| 精品一区二区三区在线观看| 亚洲成人1区2区| 一区二区三区四区不卡在线| 国产精品精品国产色婷婷| 久久亚洲一级片| 日韩欧美一二三区| 日韩一级黄色大片| 欧美一级电影网站| 欧美精品18+| 欧美日韩国产不卡| 精品婷婷伊人一区三区三| 91国内精品野花午夜精品| 91视频免费看| 91免费看视频| 一本久久综合亚洲鲁鲁五月天 | 国产精品美女一区二区| 久久久国产精华| 国产亚洲视频系列| 中文一区二区在线观看| 亚洲国产精华液网站w| 亚洲国产成人午夜在线一区| 日本一区免费视频| 国产精品久久久久久久久快鸭 | 成人精品一区二区三区中文字幕| 国产一区二区成人久久免费影院| 国产一区二区三区电影在线观看| 国产一区欧美二区| 成人理论电影网| 99久久久精品| 91黄色激情网站| 欧美一区二区三区四区视频| 91精品国产综合久久精品麻豆 | 国产色91在线| 国产精品福利一区| 亚洲免费观看视频| 天使萌一区二区三区免费观看| 久久精品久久综合| 成人激情午夜影院| 91精品办公室少妇高潮对白| 欧美美女黄视频| 久久亚洲私人国产精品va媚药| 国产精品剧情在线亚洲| 亚洲电影一区二区三区| 精品亚洲国内自在自线福利| av激情成人网| 91精品婷婷国产综合久久性色 | 美国毛片一区二区三区| 国产精品传媒视频| 亚洲成人手机在线| 婷婷丁香激情综合| 亚洲精品精品亚洲| 亚洲日本韩国一区| 午夜精品久久久久久久99樱桃| 日韩不卡在线观看日韩不卡视频| 免播放器亚洲一区| 国产精品综合久久| 欧美情侣在线播放| 日韩精品一区二区三区蜜臀| 国产欧美中文在线| 亚洲精品国产一区二区精华液 | 欧美日韩久久久久久| 欧美顶级少妇做爰| 久久久国产午夜精品| 日韩美女视频一区二区| 亚洲综合自拍偷拍| 国产精品资源在线看| 91丨porny丨中文| 日韩午夜激情免费电影| 国产欧美一区二区精品性色超碰 | 中文字幕一区二区三区在线播放| 午夜精品爽啪视频| 麻豆91在线播放| caoporen国产精品视频| 欧美高清激情brazzers| 国产亚洲综合av| 亚洲免费视频成人| 国产成a人亚洲精| 精品视频1区2区3区| 久久你懂得1024| 午夜成人在线视频| 国产福利一区二区三区在线视频| 在线成人av网站| 国产精品成人免费| 九九国产精品视频| 91黄色免费观看| 久久久一区二区三区| 免费成人av在线播放| 96av麻豆蜜桃一区二区| 日韩一级片在线观看| 一片黄亚洲嫩模| 精彩视频一区二区| 日韩三级免费观看| 亚洲一区二区视频在线观看| 国产激情一区二区三区| 欧美一区二区视频在线观看2020| 欧美一区二区三区啪啪| 亚洲高清在线精品| 91片在线免费观看| 中日韩av电影| 国产传媒欧美日韩成人| 欧洲精品一区二区| 亚洲一区二区高清| 不卡av在线网| 亚洲国产精品精华液ab| 韩国精品在线观看| 精品乱码亚洲一区二区不卡| 免费日韩伦理电影| 欧美在线999| 亚洲欧洲精品一区二区三区不卡| 精品一区二区三区免费视频| 日韩一区二区电影在线| 日本最新不卡在线| 欧美日韩亚洲高清一区二区| 一区二区三区欧美| 91精品91久久久中77777| 亚洲资源中文字幕| 欧美三级午夜理伦三级中视频| 亚洲视频在线观看一区| 不卡一区二区在线| 中文字幕免费不卡| 91捆绑美女网站| 亚洲同性gay激情无套| 91麻豆免费视频| 亚洲欧美日韩国产中文在线| 国产在线播放一区二区三区| 久久亚洲春色中文字幕久久久| 免费观看在线色综合| 337p日本欧洲亚洲大胆色噜噜| 美国十次了思思久久精品导航| 日韩欧美成人一区二区| 麻豆国产一区二区| 中文字幕精品综合| 99久久精品费精品国产一区二区| 国产精品毛片高清在线完整版| 久久99精品久久久久久| 综合在线观看色| 日本久久精品电影| 午夜电影网亚洲视频| 欧美一区二区三区影视|