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

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

?? mmaloglistbox.cpp

?? 日志表控件
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
 }

// --------------------------------------------------------------------------

LINEDATA_MEMORY *CMMALogListBox::GetItemData(HWND hListBox, int iIndex)
 {
  int iCount = SendMessage(hListBox, LB_GETCOUNT, 0L, 0L);

  if (iIndex < 0 || iIndex >= iCount) return NULL;

  LINEDATA_MEMORY *pstLDM = (LINEDATA_MEMORY *)SendMessage(hListBox, LB_GETITEMDATA, (WPARAM)iIndex, 0L);

  return pstLDM;
 }

// --------------------------------------------------------------------------

char *CMMALogListBox::GetLengthlyType(HWND hListBox)
 {
  static char st_szGetLengthlyType[MMALOGLISTBOX_LINEDATA_TYPELEN + 1];

  memset(st_szGetLengthlyType, 0, sizeof(st_szGetLengthlyType));

  unsigned int            iLen        = 0;
  MMALOGLISTBOX_USERDATA *pstUserData = CMMALogListBox::GetUserData(hListBox);

  if (strlen(LOGLBSTRING_INFO   ) > iLen) iLen = strlen(LOGLBSTRING_INFO);
  if (strlen(LOGLBSTRING_WARNING) > iLen) iLen = strlen(LOGLBSTRING_WARNING);
  if (strlen(LOGLBSTRING_ERROR  ) > iLen) iLen = strlen(LOGLBSTRING_ERROR);
  if (strlen(LOGLBSTRING_FATAL  ) > iLen) iLen = strlen(LOGLBSTRING_FATAL);
  if (strlen(LOGLBSTRING_SYSTEM ) > iLen) iLen = strlen(LOGLBSTRING_SYSTEM);
  if (strlen(LOGLBSTRING_DEBUG1 ) > iLen) iLen = strlen(LOGLBSTRING_DEBUG1);
  if (strlen(LOGLBSTRING_DEBUG2 ) > iLen) iLen = strlen(LOGLBSTRING_DEBUG2);
  if (strlen(LOGLBSTRING_DEBUG3 ) > iLen) iLen = strlen(LOGLBSTRING_DEBUG3);
  if (strlen(LOGLBSTRING_DEBUG4 ) > iLen) iLen = strlen(LOGLBSTRING_DEBUG4);
  if (strlen(LOGLBSTRING_TRACE  ) > iLen) iLen = strlen(LOGLBSTRING_TRACE);

  if (pstUserData)
   {
    if (strlen(pstUserData->szPersonal[ 0]   ) > iLen) iLen = strlen(pstUserData->szPersonal[ 0]);
    if (strlen(pstUserData->szPersonal[ 1]   ) > iLen) iLen = strlen(pstUserData->szPersonal[ 1]);
    if (strlen(pstUserData->szPersonal[ 2]   ) > iLen) iLen = strlen(pstUserData->szPersonal[ 2]);
    if (strlen(pstUserData->szPersonal[ 3]   ) > iLen) iLen = strlen(pstUserData->szPersonal[ 3]);
    if (strlen(pstUserData->szPersonal[ 4]   ) > iLen) iLen = strlen(pstUserData->szPersonal[ 4]);
    if (strlen(pstUserData->szPersonal[ 5]   ) > iLen) iLen = strlen(pstUserData->szPersonal[ 5]);
    if (strlen(pstUserData->szPersonal[ 6]   ) > iLen) iLen = strlen(pstUserData->szPersonal[ 6]);
    if (strlen(pstUserData->szPersonal[ 7]   ) > iLen) iLen = strlen(pstUserData->szPersonal[ 7]);
    if (strlen(pstUserData->szPersonal[ 8]   ) > iLen) iLen = strlen(pstUserData->szPersonal[ 8]);
    if (strlen(pstUserData->szPersonal[ 9]   ) > iLen) iLen = strlen(pstUserData->szPersonal[ 9]);
    if (strlen(pstUserData->szPersonal[10]   ) > iLen) iLen = strlen(pstUserData->szPersonal[10]);
    if (strlen(pstUserData->szPersonal[11]   ) > iLen) iLen = strlen(pstUserData->szPersonal[11]);
    if (strlen(pstUserData->szPersonal[12]   ) > iLen) iLen = strlen(pstUserData->szPersonal[12]);
   }

  for (unsigned int I=0; I<iLen; I++) st_szGetLengthlyType[I] = 'O';

  return st_szGetLengthlyType;
 }

// --------------------------------------------------------------------------

int CMMALogListBox::GetLineCount(LPCTSTR lpszString)
 {
  int iLineCount = 1;

  for (unsigned int I=0; I<strlen(lpszString); I++)
   {
    if (lpszString[I] == '\n') iLineCount++;
   }

  return iLineCount;
 }

// --------------------------------------------------------------------------

WNDPROC CMMALogListBox::GetOldWndProc(HWND hListBox)
 {
  if ( !IsWindow(hListBox) ) return NULL;

  MMALOGLISTBOX_USERDATA *pstUserData = GetUserData(hListBox);

  if (!pstUserData) return NULL;

  return pstUserData->pOldWndProc;
 }

// --------------------------------------------------------------------------

int CMMALogListBox::GetPixelStringHeight(HDC hDC, char *szText)
 {
  SIZE stSize;

  if (!GetTextExtentPoint32(hDC, szText, strlen(szText), &stSize)) return -1;

  return stSize.cy;
 }

// --------------------------------------------------------------------------

char *CMMALogListBox::GetStringTime(SYSTEMTIME &stST)
 {
  static char st_szGetStringTime[255];

  sprintf(st_szGetStringTime, "%02d.%02d.%04d %02d:%02d:%02d:%03d", stST.wDay,
                                                                    stST.wMonth,
                                                                    stST.wYear,
                                                                    stST.wHour,
                                                                    stST.wMinute,
                                                                    stST.wSecond,
                                                                    stST.wMilliseconds);

  return st_szGetStringTime;
 }

// --------------------------------------------------------------------------

char *CMMALogListBox::GetStringType(HWND hListBox, long lType)
 {
  if (lType & LOGLB_INFO      ) return LOGLBSTRING_INFO;
  if (lType & LOGLB_WARNING   ) return LOGLBSTRING_WARNING;
  if (lType & LOGLB_ERROR     ) return LOGLBSTRING_ERROR;
  if (lType & LOGLB_FATAL     ) return LOGLBSTRING_FATAL;
  if (lType & LOGLB_SYSTEM    ) return LOGLBSTRING_SYSTEM;
  if (lType & LOGLB_DEBUG1    ) return LOGLBSTRING_DEBUG1;
  if (lType & LOGLB_DEBUG2    ) return LOGLBSTRING_DEBUG2;
  if (lType & LOGLB_DEBUG3    ) return LOGLBSTRING_DEBUG3;
  if (lType & LOGLB_DEBUG4    ) return LOGLBSTRING_DEBUG4;
  if (lType & LOGLB_TRACE     ) return LOGLBSTRING_TRACE;

  MMALOGLISTBOX_USERDATA *pstUserData = CMMALogListBox::GetUserData(hListBox);

  if (pstUserData)
   {
    if (lType & LOGLB_PERSONAL1 ) return pstUserData->szPersonal[0];
    if (lType & LOGLB_PERSONAL2 ) return pstUserData->szPersonal[1];
    if (lType & LOGLB_PERSONAL3 ) return pstUserData->szPersonal[2];
    if (lType & LOGLB_PERSONAL4 ) return pstUserData->szPersonal[3];
    if (lType & LOGLB_PERSONAL5 ) return pstUserData->szPersonal[4];
    if (lType & LOGLB_PERSONAL6 ) return pstUserData->szPersonal[5];
    if (lType & LOGLB_PERSONAL7 ) return pstUserData->szPersonal[6];
    if (lType & LOGLB_PERSONAL8 ) return pstUserData->szPersonal[7];
    if (lType & LOGLB_PERSONAL9 ) return pstUserData->szPersonal[8];
    if (lType & LOGLB_PERSONAL10) return pstUserData->szPersonal[9];
    if (lType & LOGLB_PERSONAL11) return pstUserData->szPersonal[10];
    if (lType & LOGLB_PERSONAL12) return pstUserData->szPersonal[11];
    if (lType & LOGLB_PERSONAL13) return pstUserData->szPersonal[12];
   }

  return "";
 }

// --------------------------------------------------------------------------

MMALOGLISTBOX_USERDATA *CMMALogListBox::GetUserData(HWND hListBox)
 {
  if ( !IsWindow(hListBox) ) return NULL;

  MMALOGLISTBOX_USERDATA *pstUserData = (MMALOGLISTBOX_USERDATA *)GetWindowLong(hListBox, GWL_USERDATA);

  long lVersion = -1;

  if (pstUserData)
   {
    try
     {
      memcpy(&lVersion, pstUserData, sizeof(long));
     }
    catch(...)
     {
      OutputDebugString("Access Violation was or will be treated correctly\n");
      lVersion = -1;
      throw;
     }
   }

  if (lVersion == -1 || lVersion != MMALOGLISTBOX_VERSION) return NULL;

  return pstUserData;
 }

// --------------------------------------------------------------------------

long CMMALogListBox::IsSeparatorLine(long lType)
 {
  if (lType & LOGLB_SEPARATOR) return LOGLB_SEPARATOR;

  if (lType & LOGLB_DBLSEPARATOR) return LOGLB_DBLSEPARATOR;

  if (lType & LOGLB_DASHSEPARATOR) return LOGLB_DASHSEPARATOR;

  if (lType & LOGLB_DOTSEPARATOR) return LOGLB_DOTSEPARATOR;

  if (lType & LOGLB_DASHDOTSEPARATOR) return LOGLB_DASHDOTSEPARATOR;

  if (lType & LOGLB_DASHDOTDOTSEPARATOR) return LOGLB_DASHDOTDOTSEPARATOR;

  return 0;
 }

// --------------------------------------------------------------------------

BOOL CMMALogListBox::ResetListBoxContent(HWND hListBox)
 {
  if (hListBox == NULL) return FALSE;

  LRESULT lCount = SendMessage(hListBox, LB_GETCOUNT, 0L, 0L);

  if (lCount != LB_ERR)
   {
    for (int I=0; I<lCount; I++)
     {
      LINEDATA_MEMORY *pstLDM = (LINEDATA_MEMORY *)SendMessage(hListBox, LB_GETITEMDATA, (WPARAM)I, 0L);

      if ((LRESULT)pstLDM != LB_ERR)
       {
        if (pstLDM->hFont) DeleteObject(pstLDM->hFont);

        delete pstLDM;
       }
     }
   }

  SendMessage(hListBox, LB_RESETCONTENT, 0L, 0L);

  return TRUE;
 }

// --------------------------------------------------------------------------

BOOL CMMALogListBox::SetUserData(HWND hListBox, MMALOGLISTBOX_USERDATA *pstUserData)
 {
  if (hListBox == NULL) return FALSE;

  SetWindowLong(hListBox, GWL_USERDATA, (LONG)pstUserData);

  return TRUE;
 }

// --------------------------------------------------------------------------
// PROTECTED MEMBERS
// --------------------------------------------------------------------------

BOOL CMMALogListBox::AddListBoxLine(HWND hListBox, LINEDATA_MEMORY &stLDM, BOOL bFirstAdd)
 {
  #ifndef _DEBUG
  if (stLDM.stLDF.lType == LOGLB_TRACE) return TRUE;
  #endif

  if (hListBox == NULL) return FALSE;

  MMALOGLISTBOX_USERDATA *pstUserData = GetUserData(hListBox);

  LRESULT lResult;

  if (bFirstAdd == FALSE)
   {
    GetSystemTime(&stLDM.stLDF.stST);

    if (m_lBias > 0) stLDM.stLDF.stST.wHour += (unsigned short)m_lBias;
    else stLDM.stLDF.stST.wHour -= (unsigned short)m_lBias;

    long lNewActIndex = IncreaseActIndex(m_hFile);

    if (lNewActIndex == -1) return FALSE;

    if (!WriteLineDataAt(m_hFile, lNewActIndex, stLDM.stLDF)) return FALSE;

    if ( !DeleteListBoxString(hListBox, 0) ) return FALSE;

    stLDM.stLDF.bNewLineData = TRUE;
   }

  LINEDATA_MEMORY *pstAllocatedLDM = new LINEDATA_MEMORY;

  memcpy(pstAllocatedLDM, &stLDM, sizeof(LINEDATA_MEMORY));

  // set default settings for some special items
  if (pstAllocatedLDM->stLDF.lType & LOGLB_ERROR)
   {
    pstAllocatedLDM->stLDF.stTypeColors.bUseTextColor = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.bUseBkColor   = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.clrText       = RGB(255,255,255);
    pstAllocatedLDM->stLDF.stTypeColors.clrBk         = RGB(255,0,0);
   }

  if (pstAllocatedLDM->stLDF.lType & LOGLB_FATAL)
   {
    pstAllocatedLDM->stLDF.stTypeColors.bUseTextColor = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.bUseBkColor   = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.clrText       = RGB(255,255,255);
    pstAllocatedLDM->stLDF.stTypeColors.clrBk         = RGB(100,40,0);
   }

  if (pstAllocatedLDM->stLDF.lType & LOGLB_DEBUG1)
   {
    pstAllocatedLDM->stLDF.stTypeColors.bUseTextColor = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.bUseBkColor   = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.clrText       = pstUserData ? pstUserData->clrTextDebug[0] : RGB(0,0,0);
    pstAllocatedLDM->stLDF.stTypeColors.clrBk         = pstUserData ? pstUserData->clrBkDebug[0] : RGB(255,255,255);
   }

  if (pstAllocatedLDM->stLDF.lType & LOGLB_DEBUG2)
   {
    pstAllocatedLDM->stLDF.stTypeColors.bUseTextColor = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.bUseBkColor   = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.clrText       = pstUserData ? pstUserData->clrTextDebug[1] : RGB(0,0,0);
    pstAllocatedLDM->stLDF.stTypeColors.clrBk         = pstUserData ? pstUserData->clrBkDebug[1] : RGB(255,255,255);
   }

  if (pstAllocatedLDM->stLDF.lType & LOGLB_DEBUG3)
   {
    pstAllocatedLDM->stLDF.stTypeColors.bUseTextColor = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.bUseBkColor   = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.clrText       = pstUserData ? pstUserData->clrTextDebug[2] : RGB(0,0,0);
    pstAllocatedLDM->stLDF.stTypeColors.clrBk         = pstUserData ? pstUserData->clrBkDebug[2] : RGB(255,255,255);
   }

  if (pstAllocatedLDM->stLDF.lType & LOGLB_DEBUG4)
   {
    pstAllocatedLDM->stLDF.stTypeColors.bUseTextColor = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.bUseBkColor   = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.clrText       = pstUserData ? pstUserData->clrTextDebug[3] : RGB(0,0,0);
    pstAllocatedLDM->stLDF.stTypeColors.clrBk         = pstUserData ? pstUserData->clrBkDebug[3] : RGB(255,255,255);
   }

  #ifdef _DEBUG
  if (pstAllocatedLDM->stLDF.lType & LOGLB_TRACE)
   {
    pstAllocatedLDM->stLDF.stTypeColors.bUseTextColor = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.bUseBkColor   = TRUE;
    pstAllocatedLDM->stLDF.stTypeColors.clrText       = RGB(0,0,0);
    pstAllocatedLDM->stLDF.stTypeColors.clrBk         = RGB(0,255,0);
   }
  #endif

  // First calculate the width of the listbox
  if (pstUserData && pstUserData->iListBoxWidth < 2000)
   {
    pstUserData->iListBoxWidth = 2000;
    SendMessage(hListBox, LB_SETHORIZONTALEXTENT, (WPARAM)pstUserData->iListBoxWidth, 0L);
   }

  lResult = SendMessage(hListBox, LB_ADDSTRING, 0L, (LPARAM)(LPCTSTR)pstAllocatedLDM);

  if (lResult == LB_ERR || lResult == LB_ERRSPACE) return FALSE;

  LRESULT lCount = SendMessage(hListBox, LB_GETCOUNT, 0L, 0L);

  SendMessage(hListBox, LB_SETCURSEL, (WPARAM)(lCount-1), 0L);

  return TRUE;
 }

// --------------------------------------------------------------------------

void CMMALogListBox::CloseClassLogFile()
 {
  if (m_hFile == -1) return;

  _close(m_hFile);

  m_hFile = -1;
 }

// --------------------------------------------------------------------------

void CMMALogListBox::CloseLogFile(HFILE hFile)
 {
  if (hFile == -1) return;

  _close(hFile);

  hFile = NULL;
 }

// --------------------------------------------------------------------------

BOOL CMMALogListBox::CreateEmptyLogFile(char *szFileName, long lNbrLines)
 {
  HFILE hFile = _open(szFileName, _O_RDWR | _O_BINARY | _O_TRUNC | _O_CREAT, _S_IREAD | _S_IWRITE);

  if (hFile == -1)
   {
    TRACE("(CMMALogListBox) CreateEmptyLogFile(szFileName = %s, lNbrLines = %ld) : Error opening/creating file (code = %ld)\n", szFileName, lNbrLines, GetLastError());
    return FALSE;
   }

  long lActIndex = 0;

  if (_write(hFile, (char *)&lActIndex, sizeof(long)) != sizeof(long))
   {
    TRACE("(CMMALogListBox) CreateEmptyLogFile(szFileName = %s, lNbrLines = %ld) : Error writing start index\n", szFileName, lNbrLines);
    _close(hFile);
    return FALSE;
   }

  LINEDATA_FILE stLDF;

  memset(&stLDF, 0, sizeof(stLDF));

  for (long I=0; I<lNbrLines; I++)
   {
    if (_write(hFile, (char *)&stLDF, sizeof(LINEDATA_FILE)) != sizeof(LINEDATA_FILE))
     {
      TRACE("(CMMALogListBox) CreateEmptyLogFile(szFileName = %s, lNbrLines = %ld) : Error writing line data N

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人精品鲁一区一区二区| 91日韩在线专区| 美女视频黄 久久| 337p粉嫩大胆噜噜噜噜噜91av| 色综合久久久久| 美女视频免费一区| 午夜精品在线视频一区| 亚洲欧洲日韩综合一区二区| 国产无一区二区| 精品欧美久久久| 欧美日韩免费观看一区二区三区| 国产成人啪免费观看软件| 韩国在线一区二区| 国产一区二区成人久久免费影院 | 亚洲乱码国产乱码精品精可以看| 久久久精品日韩欧美| 久久亚洲欧美国产精品乐播| 精品国产第一区二区三区观看体验 | 婷婷成人综合网| 午夜在线成人av| 日本不卡一区二区| 性久久久久久久久久久久| 亚洲国产欧美在线| 视频一区国产视频| 青娱乐精品视频| 五月开心婷婷久久| 日韩电影在线免费看| 美女网站一区二区| 国内精品伊人久久久久av一坑 | 精品一二三四在线| 日本va欧美va瓶| 图片区小说区国产精品视频| 日本欧美一区二区三区乱码| 久久66热re国产| 国内不卡的二区三区中文字幕| 国产在线精品一区二区不卡了| 国产精品亚洲第一区在线暖暖韩国| 国产精品一二三四| 99精品一区二区三区| 精品视频一区二区不卡| 欧美福利视频一区| 日韩欧美在线网站| 国产亚洲一区二区三区在线观看| 国产精品久久久久久久岛一牛影视| 亚洲欧洲国产日本综合| 亚洲va韩国va欧美va精品| 久久精品久久久精品美女| 日韩极品在线观看| 国产盗摄女厕一区二区三区 | 色国产综合视频| 欧美丰满一区二区免费视频| 欧美成人一区二区三区片免费 | 亚洲影视资源网| 美女看a上一区| 激情综合色综合久久| 成人性生交大片免费看中文网站| 色噜噜狠狠成人网p站| 日韩欧美色综合| 国产精品免费久久| 日产欧产美韩系列久久99| 成人免费不卡视频| 在线观看亚洲精品| 欧美不卡123| 国产精品嫩草影院av蜜臀| 亚洲超碰97人人做人人爱| 国产精品系列在线观看| 欧美午夜寂寞影院| 久久精品一区二区三区不卡| 亚洲三级电影网站| 视频一区欧美日韩| av一区二区三区黑人| 欧美一级高清大全免费观看| 日韩一区欧美一区| 捆绑变态av一区二区三区| 色综合网站在线| 日韩欧美一区中文| 中文字幕一区二区三区色视频| 欧美a级一区二区| 日本二三区不卡| 久久久精品2019中文字幕之3| 一二三四区精品视频| 国产xxx精品视频大全| 欧美高清dvd| 亚洲欧美日韩国产综合| 免费成人你懂的| 91麻豆国产福利精品| 久久久国产综合精品女国产盗摄| 亚洲国产欧美另类丝袜| 99热99精品| 久久久久国产成人精品亚洲午夜| 日韩va欧美va亚洲va久久| 成人av在线网站| 国产亚洲视频系列| 久久精品999| 7777精品伊人久久久大香线蕉经典版下载 | 欧美亚洲免费在线一区| 精品久久国产字幕高潮| 亚洲成人在线网站| 91丨九色丨蝌蚪富婆spa| 久久久99久久| 激情欧美一区二区| 欧美日韩视频一区二区| 亚洲色图都市小说| 成人黄色av网站在线| 精品国产一区a| 美国三级日本三级久久99| 欧美影院午夜播放| 亚洲欧美自拍偷拍色图| 国产不卡高清在线观看视频| 久久综合丝袜日本网| 热久久久久久久| 欧美一区欧美二区| 亚洲精品国产无天堂网2021| 成年人午夜久久久| 国产精品拍天天在线| 国产美女视频一区| 久久久不卡网国产精品一区| 国产又粗又猛又爽又黄91精品| 欧美视频一区二区| 五月综合激情婷婷六月色窝| 欧美人xxxx| 亚洲成在线观看| 色爱区综合激月婷婷| 伊人夜夜躁av伊人久久| 在线这里只有精品| 亚洲国产成人高清精品| 欧美三级中文字| 亚洲一二三四区| 欧美日韩国产色站一区二区三区| 五月综合激情网| 欧美一级日韩免费不卡| 国产传媒久久文化传媒| 欧美一级二级在线观看| 精彩视频一区二区三区| 国产精品视频一二| 欧美午夜精品一区二区三区 | 播五月开心婷婷综合| 亚洲一二三区在线观看| 日韩欧美精品在线| 不卡免费追剧大全电视剧网站| 亚洲综合视频网| 欧美精品一区二区在线观看| av一二三不卡影片| 人人精品人人爱| 激情国产一区二区| 国产精品激情偷乱一区二区∴| 欧美日韩一区二区三区在线| 国产一区二区三区在线观看免费| 日韩美女啊v在线免费观看| 91精品国产综合久久福利| 高清不卡在线观看| 婷婷综合另类小说色区| 国产日韩欧美高清在线| 欧美老肥妇做.爰bbww视频| 国产精品456露脸| 亚洲3atv精品一区二区三区| 国产欧美日韩在线| 欧美日产在线观看| 高清beeg欧美| 开心九九激情九九欧美日韩精美视频电影 | 91精品国产免费| 97精品国产97久久久久久久久久久久| 日产欧产美韩系列久久99| 日韩一区在线播放| 精品日韩成人av| 欧美精品视频www在线观看| 成人教育av在线| 麻豆国产一区二区| 亚洲国产成人va在线观看天堂| 国产欧美一区二区精品性| 7777精品伊人久久久大香线蕉超级流畅 | 欧美人妇做爰xxxⅹ性高电影 | 国产欧美一区二区精品秋霞影院 | 亚洲国产日韩综合久久精品| 国产精品美女久久久久久久久| 日韩欧美在线123| 欧美丰满高潮xxxx喷水动漫| www.日韩在线| 国产成人一区二区精品非洲| 久久国产精品区| 亚洲成人先锋电影| 亚洲女子a中天字幕| 国产精品网友自拍| 久久人人超碰精品| 欧美一卡2卡三卡4卡5免费| 欧美日韩国产高清一区二区三区| av网站一区二区三区| 国产高清在线精品| 久久成人羞羞网站| 久久精品噜噜噜成人av农村| 天天综合网天天综合色| 亚洲成人精品在线观看| 亚洲精品久久嫩草网站秘色| 国产精品美女久久久久久2018| 国产亚洲一区二区三区四区 | 欧美激情一区二区三区全黄| 久久久精品蜜桃| 久久久久国产精品人| 久久精品视频免费| 久久久精品2019中文字幕之3|