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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? interface.cpp

?? jedit 一個小型java編譯器的源碼
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
#include"interface.h"
#include"resource.h"
bool DockCtrl::IsClassRegistered=false;
HMENU DockCtrl::hMenu=NULL;
#define POPUP_STYLES   (WS_POPUP | WS_CLIPCHILDREN | WS_CLIPSIBLINGS | WS_SYSMENU  | WS_THICKFRAME)
#define POPUP_EXSTYLES (WS_EX_TOOLWINDOW | WS_EX_WINDOWEDGE)

LRESULT DockCtrl::CtrlWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
	int i;
	switch( uMsg )
	{
	case WM_CREATE:
		SetTimer(hWnd,1000,200,NULL);
		break;
	case WM_PARENTPOSCHANGED:
		AdjustWnd();
		for(i=0;i<Container.length();i++)
		{
			SetWindowState(Container[i].hWnd);
		}
		return 0;
	case WM_PAINT:
        PAINTSTRUCT ps; 
                
        BeginPaint(hWnd, &ps);
        OnDraw(ps.hdc);
        EndPaint(hWnd, &ps);
		return 0;
	case WM_LBUTTONDOWN:
		OnLButtonDown(hWnd,wParam,lParam);
		break;
	case WM_TIMER:
		OnMouseMove(hWnd,wParam,lParam);
		break;
	case WM_NCACTIVATE:
		SendMessage(Parent, WM_NCACTIVATE, true, (LONG)-1);
		return DefWindowProc(hWnd, WM_NCACTIVATE, true, (LONG)-1);
	case WM_DESTROY:
		KillTimer(hWnd,1001);
		return 0;
	}

   return DefWindowProc(hWnd, uMsg, wParam, lParam);
}
LRESULT CALLBACK DockCtrl::CtrlWindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
	DockCtrl * pWindow;
        
	if ( uMsg==WM_NCCREATE )
	{   
		assert( ! IsBadReadPtr((void *) lParam, sizeof(CREATESTRUCT)) );
		MDICREATESTRUCT * pMDIC = (MDICREATESTRUCT *) ((LPCREATESTRUCT) lParam)->lpCreateParams;

		pWindow = (DockCtrl *) (pMDIC->lParam);

		assert( ! IsBadReadPtr(pWindow, sizeof(DockCtrl)) );
		SetWindowLong(hWnd, GWL_USERDATA, (LONG) pWindow);
	}
	else
		pWindow=(DockCtrl *)GetWindowLong(hWnd, GWL_USERDATA);

	if ( pWindow )
		return pWindow->CtrlWndProc(hWnd, uMsg, wParam, lParam);
	else
		return DefWindowProc(hWnd, uMsg, wParam, lParam);
}

LRESULT DockCtrl::WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
//	UINT	uHitTest;
	POINT	point;
	RECT	rect;
	int		i;

	WndInfo *WI;
	WI=GetWI(hWnd);
	if(WI!=NULL)
		WI->lpfnWndProc(hWnd,uMsg,wParam,lParam);
	switch( uMsg )
	{
	case WM_TIMER:
		if(!WI->AutoHide||DWLButtonFlag)
			return 0;
		GetCursorPos(&point);
		GetClientRect(rect);
		ScreenToClient(hWnd,&point);
		if(point.x>rect.left&&point.x<rect.right
			&&point.y>rect.top&&point.y<rect.bottom)
			return 0;
		for(i=0;i<Container.length();i++)
			if(Container[i].State==DOCK_POPUP)
				PopIn(Container[i].hWnd);
		return 0;
/*	case WM_NCHITTEST:		//若用戶單擊客戶區,則將其作為單擊工具欄處理
		uHitTest = DefWindowProc(hWnd, WM_NCHITTEST, wParam, lParam);

		if(uHitTest == HTCLIENT)
			uHitTest = HTCAPTION;

		return uHitTest;*/
	case WM_PAINT:
		PAINTSTRUCT ps; 
                
        BeginPaint(hWnd, &ps);
        OnDWDraw(ps.hdc,hWnd);
        EndPaint(hWnd, &ps);
		return 0;
	case WM_LBUTTONDOWN:
		OnDWLButtonDown(hWnd,wParam,lParam);
		return 0;
	case WM_MOUSEMOVE:
		if(DWLButtonFlag)
			OnDWMouseMove(hWnd,wParam,lParam);
		return 0;
	case WM_LBUTTONUP:
		if(DWLButtonFlag)
			OnDWLButtonUp(hWnd,wParam,lParam);
		return 0;
	case WM_RBUTTONDOWN:
		point.x = LOWORD (lParam) ;
		point.y = HIWORD (lParam) ;
		ClientToScreen (hWnd, &point) ;
          
		TrackPopupMenu (GetSubMenu(hMenu,0), TPM_RIGHTBUTTON, point.x, point.y, 
                        0, hWnd, NULL) ;
		return 0;
	case WM_COMMAND:
		switch(wParam)
		{
		case IDM_HIDE:
			if(WI->State==DOCK_POPUP)
			{
				PopIn(hWnd);
			}
			break;
		case IDM_POPUP:
			if(WI->State==DOCK_HIDE)
			{
				PopUp(hWnd);
			}
			break;
		case IDM_AUTOHIDE:
			if(WI->AutoHide)
			{
				WI->AutoHide=false;
				CheckMenuItem(hMenu,IDM_AUTOHIDE,MF_UNCHECKED);
			}
			else
			{
				WI->AutoHide=true;
				CheckMenuItem(hMenu,IDM_AUTOHIDE,MF_CHECKED);
			}
			break;
		}
		break;
	case WM_NCACTIVATE:
		SendMessage(Parent, WM_NCACTIVATE, true, (LONG)-1);
		return DefWindowProc(hWnd, WM_NCACTIVATE, true, (LONG)-1);
	case WM_DESTROY:
		return 0;
	}
   return DefWindowProc(hWnd, uMsg, wParam, lParam);
}
LRESULT CALLBACK DockCtrl::WindowProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
	DockCtrl * pWindow;
        
	if ( uMsg==WM_NCCREATE )
	{   
		assert( ! IsBadReadPtr((void *) lParam, sizeof(CREATESTRUCT)) );
		MDICREATESTRUCT * pMDIC = (MDICREATESTRUCT *) ((LPCREATESTRUCT) lParam)->lpCreateParams;

		pWindow = (DockCtrl *) (pMDIC->lParam);

		assert( ! IsBadReadPtr(pWindow, sizeof(DockCtrl)) );
		SetWindowLong(hWnd, GWL_USERDATA, (LONG) pWindow);
	}
	else
		pWindow=(DockCtrl *)GetWindowLong(hWnd, GWL_USERDATA);

	if ( pWindow )
		return pWindow->WndProc(hWnd, uMsg, wParam, lParam);
	else
		return DefWindowProc(hWnd, uMsg, wParam, lParam);
}
void DockCtrl::AdjustWnd()
{
	int CtrlWndWidth;
	if(State==STATE_IN)
		CtrlWndWidth=10;
	else
		CtrlWndWidth=GetCtrlWndLength();
	RECT rect;
	POINT point;
	GetClientRect(rect);
	point.x=rect.right-CtrlWndWidth;
	point.y=YPos;
	ClientToScreen(Parent,&point);
	MoveWindow(hWnd,point.x,point.y,CtrlWndWidth,20,true);
}
WndInfo* DockCtrl::GetWI(HWND hwnd)
{
	for(int i=0;i<Container.length();i++)
		if(Container[i].hWnd==hwnd)
			return &Container[i];
	return NULL;
}
void DockCtrl::SetWindowState(HWND hwnd)
{
	WndInfo* WI=GetWI(hwnd);
	RECT rect;
	GetClientRect(rect);
	POINT point;
	int Width,Height;
	switch(WI->DockType)
	{
	case DOCK_LEFT:
		if(WI->State==DOCK_HIDE)
		{
			point.x=rect.left;
			point.y=WI->Y;
			Width=15;
			Height=WI->Height;
			if(Height+point.y>rect.bottom)
				Height=rect.bottom-point.y;
			ClientToScreen(Parent,&point);
			MoveWindow(hwnd,point.x-1,point.y,Width,Height,true);
		}
		else
		{
			point.x=rect.left;
			point.y=WI->Y;
			Width=WI->Width;
			Height=WI->Height;
			if(Width+point.x>rect.right)
				Width=rect.right-point.x;
			if(Height+point.y>rect.bottom)
				Height=rect.bottom-point.y;
			ClientToScreen(Parent,&point);
			MoveWindow(hwnd,point.x,point.y,Width,Height,true);
		}
		break;
	case DOCK_RIGHT:
		if(WI->State==DOCK_HIDE)
		{
			point.x=rect.right;
			point.y=WI->Y;
			Width=6;
			Height=WI->Height;
			if(Height+point.y>rect.bottom)
				Height=rect.bottom-point.y;
			ClientToScreen(Parent,&point);
			MoveWindow(hwnd,point.x-6,point.y,Width,Height,true);
		}
		else
		{
			point.x=rect.right;
			point.y=WI->Y;
			Width=WI->Width;
			Height=WI->Height;
			if(Width+point.x>rect.right)
				Width=rect.right-point.x;
			if(Height+point.y>rect.bottom)
				Height=rect.bottom-point.y;
			ClientToScreen(Parent,&point);
			MoveWindow(hwnd,point.x,point.y,Width,Height,true);
		}
		break;
	case DOCK_TOP:
		if(WI->State==DOCK_HIDE)
		{
			point.x=WI->X;
			point.y=rect.top;
			Width=WI->Width;
			Height=6;
			if(Width+point.x>rect.right)
				Width=rect.right-point.x;
			ClientToScreen(Parent,&point);
			MoveWindow(hwnd,point.x,point.y,Width,Height,true);
		}
		else
		{
			point.x=WI->X;
			point.y=rect.top;
			Width=WI->Width;
			Height=WI->Height;
			if(Width+point.x>rect.right)
				Width=rect.right-point.x;
			if(Height+point.y>rect.bottom)
				Height=rect.bottom-point.y;
			ClientToScreen(Parent,&point);
			MoveWindow(hwnd,point.x,point.y,Width,Height,true);
		}
		break;
	case DOCK_BOTTOM:
		if(WI->State==DOCK_HIDE)
		{
			point.x=WI->X;
			point.y=rect.bottom;
			Width=WI->Width;
			Height=15;
			if(Width+point.x>rect.right)
				Width=rect.right-point.x;
			ClientToScreen(Parent,&point);
			MoveWindow(hwnd,point.x,point.y-15,Width,Height,true);
		}
		else
		{
			point.x=WI->X;
			point.y=rect.bottom;
			Width=WI->Width;
			Height=WI->Height;
			if(Width+point.x>rect.right)
				Width=rect.right-point.x;
			if(Height+point.y>rect.bottom)
				Height=rect.bottom-point.y;
			ClientToScreen(Parent,&point);
			MoveWindow(hwnd,point.x,point.y,Width,Height,true);
		}
		break;
	case NODOCK:
		point.x=WI->X;
		point.y=WI->Y;
		Width=WI->Width;
		Height=WI->Height;
		if(Width+point.x>rect.right)
			Width=rect.right-point.x;
		if(Height+point.y>rect.bottom)
			Height=rect.bottom-point.y;
		ClientToScreen(Parent,&point);
		MoveWindow(hwnd,point.x,point.y,Width,Height,true);
		break;
	}
}
		
bool DockCtrl::Add(HINSTANCE hInst,char* name,
				   int x,int y,int width,int height,UINT docktype,UINT dockstyle,
				   WNDPROC lpfnwndproc,bool af)
{
	if(Parent==NULL)
		return false;

	MDICREATESTRUCT mdic;
	memset(& mdic, 0, sizeof(mdic));
	mdic.lParam = (LPARAM) this;

	HWND hwnd=CreateWindowEx(POPUP_EXSTYLES,"DockWnd",name,
		POPUP_STYLES,
		x,y,
		width,height,
		Parent,NULL,
		hInst,
		&mdic);
	if(hwnd==NULL)
		return false;

	WndInfo WI(hwnd,name,x,y,width,height,docktype,dockstyle,lpfnwndproc,af);
	Container.add(WI);
	WI.lpfnWndProc(hwnd,WM_CREATE,0,0);
	AdjustWnd();
	SetWindowState(hwnd);
	::ShowWindow(hwnd,SW_SHOW);
	::UpdateWindow(hwnd);
	return true;
}
bool DockCtrl::RegisterClass(HINSTANCE hInst)
{
	if(IsClassRegistered)
		return true;

	hMenu = LoadMenu (hInst, MAKEINTRESOURCE(IDM_DWMENU));
	CheckMenuItem(hMenu,IDM_AUTOHIDE,MF_CHECKED);

	WNDCLASSEX wc;
	memset(&wc, 0, sizeof(wc));
	wc.cbSize=sizeof(WNDCLASSEX);
	wc.cbClsExtra=0;
	wc.cbWndExtra=0;
	wc.hbrBackground=(HBRUSH)(COLOR_BTNFACE+1);
	wc.hCursor=LoadCursor(NULL,IDC_ARROW);
	wc.hIcon=NULL;
	wc.hInstance=hInst;
	wc.lpfnWndProc=CtrlWindowProc;
	wc.lpszClassName="DockCtrl";
	wc.lpszMenuName=NULL;
	wc.style=0;
	wc.hIconSm=NULL;
	
	if(!::RegisterClassEx(&wc))
		return false;
	wc.cbSize=sizeof(WNDCLASSEX);
	wc.cbClsExtra=0;
	wc.cbWndExtra=0;
	wc.hbrBackground=(HBRUSH)(COLOR_BTNFACE+1);
	wc.hCursor=LoadCursor(NULL,IDC_ARROW);
	wc.hIcon=NULL;
	wc.hInstance=hInst;//GetModuleHandle(0);
	wc.lpfnWndProc=WindowProc;
	wc.lpszClassName="DockWnd";
	wc.lpszMenuName=NULL;
	wc.style=0;
	wc.hIconSm=NULL;
	
	if(!::RegisterClassEx(&wc))
		return false;
	IsClassRegistered=true;
	return true;
}
bool DockCtrl::CreateEx(HINSTANCE hInst,HWND parent,RECT prect,int ypos)
{
	if(parent==NULL)
		return false;
	Left=prect.left;
	Right=prect.right;
	Bottom=prect.bottom;
	Top=prect.top;
	YPos=ypos;
	RECT rect;
	Parent=parent;
	GetClientRect(rect);
	if(!RegisterClass(hInst))
	{
		MessageBox(parent,"注冊類失敗,無法創建控件!",
			"錯誤",MB_OK|MB_ICONERROR);
		return false;
	}

	MDICREATESTRUCT mdic;
	memset(& mdic, 0, sizeof(mdic));
	mdic.lParam = (LPARAM) this;

	POINT lt;
	lt.x=rect.right-10;
	lt.y=ypos;
	ClientToScreen(Parent,&lt);
	hWnd=CreateWindowEx(NULL,"DockCtrl",NULL,
		WS_POPUP,lt.x,lt.y,
		10,20,Parent,NULL,hInst,&mdic);
	if(hWnd==NULL)
	{
		MessageBox(parent,"創建窗口失敗!",
			"錯誤",MB_OK|MB_ICONERROR);
		return false;
	}
	return true;
}
/******************************************************************************\
*
*  函數名:    Draw3DBar
*
*  參數:		hdc       - 設備上下文
*               x         - 矩形左上角x坐標
*               y         - 矩形左上角y坐標
*				width     - 矩形寬
*				height    - 矩形高
*				color1    - 左上兩條線顏色
*				color2    - 右下兩條線顏色
*
*  返回值:     無返回值
*
\******************************************************************************/
void Draw3DBar(HDC hdc,int x,int y,int width,int height,COLORREF color1,COLORREF color2)
{
	HPEN hPen1,hPen2,hOldPen;
	hPen1=CreatePen(PS_SOLID,1,color1);
	hPen2=CreatePen(PS_SOLID,1,color2);
	hOldPen=(HPEN)SelectObject(hdc,hPen1);
	MoveToEx(hdc,x,y,NULL);
	LineTo(hdc,x,height);
	MoveToEx(hdc,x,y,NULL);
	LineTo(hdc,width,y);
	SelectObject(hdc,hPen2);
	MoveToEx(hdc,width,height,NULL);
	LineTo(hdc,width,y);
	MoveToEx(hdc,width,height,NULL);
	LineTo(hdc,x,height);
	SelectObject(hdc,hOldPen);
	DeleteObject(hPen1);
	DeleteObject(hPen2);
	DeleteObject(hOldPen);
}

void DrawSeparetor(HDC hdc,int x)
{
	HPEN hPen1,hPen2,hOldPen;
	hPen1=CreatePen(PS_SOLID,1,RGB(128,128,128));
	hPen2=CreatePen(PS_SOLID,1,RGB(255,255,255));
	hOldPen=(HPEN)SelectObject(hdc,hPen1);
	MoveToEx(hdc,x,2,NULL);
	LineTo(hdc,x,17);
	
	SelectObject(hdc,hPen2);
	MoveToEx(hdc,x+1,2,NULL);
	LineTo(hdc,x+1,17);
	
	SelectObject(hdc,hOldPen);
	DeleteObject(hPen1);
	DeleteObject(hPen2);
	DeleteObject(hOldPen);
}
void DockCtrl::OnMouseMove(HWND hwnd,WPARAM wParam,LPARAM lParam)
{
	int x,y;
	POINT point;
	GetCursorPos(&point);
	ScreenToClient(hwnd,&point);

	x=point.x;
	y=point.y;
	if(y<0||y>20)
	{
		Focus=-1;
		InvalidateRect(hwnd,NULL,false);
		return;
	}
	if(x>0&&x<10)
	{
		Focus=0;
		InvalidateRect(hwnd,NULL,false);
		return;
	}
	int Start=10;
	for(int i=0;i<Container.length();i++)
	{
		if(x>Start&&x<Start+Container[i].GetNameLength())
		{
			Focus=i+1;
			InvalidateRect(hwnd,NULL,false);
			return;
		}
		Start+=Container[i].GetNameLength();
	}
	Focus=-1;
	InvalidateRect(hwnd,NULL,false);
}
void DockCtrl::OnLButtonDown(HWND hwnd,WPARAM wParam,LPARAM lParam)
{
	int x,y;
	Focus=-1;
	POINT point;
	GetCursorPos(&point);
	ScreenToClient(hwnd,&point);

	x=point.x;
	y=point.y;

	if(y<0||y>20)
		return;
	
	if(x>0&&x<10)
	{
		if(State==STATE_OUT)
		{
			State=STATE_IN;
		}
		else
		{
			State=STATE_OUT;
		}
		AdjustWnd();
		InvalidateRect(hwnd,NULL,true);
	}
	int Start=10;
	for(int i=0;i<Container.length();i++)
	{
		if(x>Start&&x<Start+Container[i].GetNameLength())
		{
			if(Container[i].State==DOCK_HIDE)
				PopUp(Container[i].hWnd);
			else
				PopIn(Container[i].hWnd);
			break;
		}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美性猛交xxxx乱大交退制版| 久久一日本道色综合| 91麻豆精品国产91久久久久久久久 | 国产aⅴ精品一区二区三区色成熟| 99热这里都是精品| 日韩欧美国产成人一区二区| 日韩一区有码在线| 韩国欧美国产1区| 欧美日韩午夜在线视频| 亚洲国产精品激情在线观看| 蜜臀av一级做a爰片久久| 99久久久久免费精品国产 | 欧美电影免费观看高清完整版| 国产精品九色蝌蚪自拍| 美腿丝袜亚洲三区| 欧美性色综合网| 国产精品每日更新在线播放网址| 蜜桃视频免费观看一区| 欧美日韩一区二区三区在线看| 亚洲国产精品v| 国产一区二区在线视频| 欧美一级二级三级乱码| 亚洲第一激情av| 色综合久久88色综合天天免费| 久久久综合网站| 麻豆久久久久久| 正在播放亚洲一区| 偷拍亚洲欧洲综合| 欧美亚州韩日在线看免费版国语版| 日本一区二区视频在线| 国产精品白丝av| 久久综合精品国产一区二区三区| 日韩国产欧美在线观看| 欧美三区在线观看| 亚洲福利一二三区| 欧美日韩一区三区四区| 亚洲国产精品一区二区尤物区| 99国产精品久久| 亚洲欧美另类小说视频| 91视视频在线观看入口直接观看www | 亚洲综合色在线| 日本丰满少妇一区二区三区| 综合中文字幕亚洲| 欧美性大战久久久久久久| 亚洲线精品一区二区三区八戒| 欧美日韩一区久久| 午夜影院久久久| 日韩欧美国产午夜精品| 久久99国产精品久久| 国产午夜一区二区三区| 99国产精品久久久| 亚洲午夜电影在线| 日韩视频一区二区在线观看| 国产美女一区二区三区| 国产精品久久福利| 欧美日韩亚洲综合在线 欧美亚洲特黄一级| 一级精品视频在线观看宜春院| 欧美日本韩国一区| 国产一区二区0| 中文字幕一区二区三区精华液| 欧美伊人精品成人久久综合97| 午夜精品视频一区| 久久久无码精品亚洲日韩按摩| 成人精品国产免费网站| 一区二区在线观看视频在线观看| 欧美色爱综合网| 韩国一区二区视频| 中文字幕永久在线不卡| 欧美嫩在线观看| 国产一区在线精品| 一区二区三区四区在线免费观看| 欧美日韩成人一区| 成人性生交大片免费看视频在线| 亚洲综合网站在线观看| 精品国产污污免费网站入口 | 国产精品一线二线三线| 亚洲人吸女人奶水| 精品国产1区二区| 91尤物视频在线观看| 日本欧美一区二区在线观看| 国产精品午夜春色av| 欧美精品自拍偷拍| 成人黄动漫网站免费app| 偷拍与自拍一区| 亚洲欧洲在线观看av| 精品成人私密视频| 欧美日韩一区二区三区四区| 丁香婷婷深情五月亚洲| 五月综合激情日本mⅴ| 中文字幕一区二区三区视频| 精品国产一区二区三区av性色| 色88888久久久久久影院按摩| 国产麻豆日韩欧美久久| 日本不卡视频一二三区| 最新国产の精品合集bt伙计| 亚洲精品一区二区三区在线观看| 欧美图区在线视频| 99久久夜色精品国产网站| 国产一区二区主播在线| 奇米四色…亚洲| 亚洲成人av电影在线| 亚洲欧美日韩系列| 国产精品久久久久久久久免费桃花 | 一本一道久久a久久精品综合蜜臀| 黄色成人免费在线| 青青国产91久久久久久| 午夜精彩视频在线观看不卡| 一区二区三区在线观看视频| 国产精品久久三| 国产精品无人区| 国产婷婷色一区二区三区| 精品盗摄一区二区三区| 日韩欧美一区二区在线视频| 欧美精品乱码久久久久久按摩 | 精品一区二区av| 麻豆91免费看| 美女视频一区在线观看| 日韩高清欧美激情| 日韩精品色哟哟| 美女一区二区在线观看| 蜜臀av性久久久久蜜臀av麻豆| 蜜桃av一区二区| 久久99蜜桃精品| 激情av综合网| 国产成人午夜精品5599| 国产ts人妖一区二区| 国产成人日日夜夜| 91在线无精精品入口| 色屁屁一区二区| 欧美日韩卡一卡二| 这里只有精品免费| 久久久久久久久久久久久女国产乱| 精品国产一二三| 国产精品久久夜| 亚洲一区二三区| 日韩国产欧美在线观看| 韩国一区二区在线观看| 成人国产免费视频| 欧美日韩在线直播| 欧美第一区第二区| 欧美激情一区在线观看| 亚洲欧美日韩中文字幕一区二区三区 | 欧美久久一区二区| 精品久久国产字幕高潮| 国产天堂亚洲国产碰碰| 亚洲男女毛片无遮挡| 日韩电影在线看| 风间由美一区二区三区在线观看| 99re这里只有精品首页| 欧美日韩国产精品自在自线| 精品伦理精品一区| 国产精品美女视频| 亚洲 欧美综合在线网络| 久久av老司机精品网站导航| av一区二区久久| 日韩亚洲欧美在线| 成人免费一区二区三区视频 | 欧美另类一区二区三区| 久久人人97超碰com| 亚洲欧美精品午睡沙发| 日本美女视频一区二区| 不卡免费追剧大全电视剧网站| 欧美日韩在线播放一区| 中文字幕精品—区二区四季| 日韩av在线播放中文字幕| 成人国产一区二区三区精品| 91精品婷婷国产综合久久竹菊| 国产精品久久久久影院亚瑟 | 国产视频一区在线播放| 亚洲国产视频a| 成人免费的视频| 欧美成人乱码一区二区三区| 亚洲欧美一区二区三区孕妇| 国产一区二区在线影院| 欧美日韩免费不卡视频一区二区三区| 国产亚洲一二三区| 免费成人深夜小野草| 色www精品视频在线观看| 欧美国产日韩精品免费观看| 日本91福利区| 欧美日韩高清在线播放| 中文字幕在线免费不卡| 国产精品一区免费视频| 69久久99精品久久久久婷婷| 亚洲人成在线观看一区二区| 国产精品中文字幕欧美| 日韩欧美一二三四区| 亚洲一区在线看| 99久久国产免费看| 国产精品嫩草影院com| 玖玖九九国产精品| 欧美精品久久久久久久久老牛影院| 亚洲欧洲精品成人久久奇米网| 国产精品一区二区你懂的| 精品国产乱码久久久久久1区2区 | 精品国精品国产| 麻豆精品视频在线观看视频| 91精品国产aⅴ一区二区| 午夜亚洲国产au精品一区二区| 91亚洲精华国产精华精华液|