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

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

?? staticdialog.cpp

?? 一個功能強大的代碼編輯器源代碼
?? CPP
字號:
//this file is part of notepad++
//Copyright (C)2003 Don HO ( donho@altern.org )
//
//This program is free software; you can redistribute it and/or
//modify it under the terms of the GNU General Public License
//as published by the Free Software Foundation; either
//version 2 of the License, or (at your option) any later version.
//
//This program is distributed in the hope that it will be useful,
//but WITHOUT ANY WARRANTY; without even the implied warranty of
//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//GNU General Public License for more details.
//
//You should have received a copy of the GNU General Public License
//along with this program; if not, write to the Free Software
//Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.

#include "StaticDialog.h"
#include "SysMsg.h"

void StaticDialog::goToCenter()
{
    RECT rc;
    ::GetClientRect(_hParent, &rc);
    POINT center;
    center.x = rc.left + (rc.right - rc.left)/2;
    center.y = rc.top + (rc.bottom - rc.top)/2;
    ::ClientToScreen(_hParent, &center);

	int x = center.x - (_rc.right - _rc.left)/2;
	int y = center.y - (_rc.bottom - _rc.top)/2;

	::SetWindowPos(_hSelf, HWND_TOP, x, y, _rc.right - _rc.left, _rc.bottom - _rc.top, SWP_SHOWWINDOW);
}

HGLOBAL StaticDialog::makeRTLResource(int dialogID, DLGTEMPLATE **ppMyDlgTemplate)
{
	// Get Dlg Template resource
	HRSRC  hDialogRC = ::FindResource(_hInst, MAKEINTRESOURCE(dialogID), RT_DIALOG);
	HGLOBAL  hDlgTemplate = ::LoadResource(_hInst, hDialogRC);
	DLGTEMPLATE *pDlgTemplate = (DLGTEMPLATE *)::LockResource(hDlgTemplate);
	
	// Duplicate Dlg Template resource
	unsigned long sizeDlg = ::SizeofResource(_hInst, hDialogRC);
	HGLOBAL hMyDlgTemplate = ::GlobalAlloc(GPTR, sizeDlg);
	*ppMyDlgTemplate = (DLGTEMPLATE *)::GlobalLock(hMyDlgTemplate);

	::memcpy(*ppMyDlgTemplate, pDlgTemplate, sizeDlg);
	
	DLGTEMPLATEEX *pMyDlgTemplateEx = (DLGTEMPLATEEX *)*ppMyDlgTemplate;
	if (pMyDlgTemplateEx->signature == 0xFFFF)
		pMyDlgTemplateEx->exStyle |= WS_EX_LAYOUTRTL;
	else
		(*ppMyDlgTemplate)->dwExtendedStyle |= WS_EX_LAYOUTRTL;

	return hMyDlgTemplate;
}

void StaticDialog::create(int dialogID, bool isRTL)
{
	if (isRTL)
	{
		DLGTEMPLATE *pMyDlgTemplate = NULL;
		HGLOBAL hMyDlgTemplate = makeRTLResource(dialogID, &pMyDlgTemplate);
		_hSelf = ::CreateDialogIndirectParam(_hInst, pMyDlgTemplate, _hParent, (DLGPROC)dlgProc, (LPARAM)this);
		::GlobalFree(hMyDlgTemplate);
	}
	else
		_hSelf = ::CreateDialogParam(_hInst, MAKEINTRESOURCE(dialogID), _hParent, (DLGPROC)dlgProc, (LPARAM)this);

	if (!_hSelf)
	{
		systemMessage("StaticDialog");
		throw int(666);
	}

	::SendMessage(_hParent, NPPM_MODELESSDIALOG, MODELESSDIALOGADD, (WPARAM)_hSelf);
}

BOOL CALLBACK StaticDialog::dlgProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) 
{
	switch (message) 
	{
		case WM_INITDIALOG :
		{
			StaticDialog *pStaticDlg = (StaticDialog *)(lParam);
			pStaticDlg->_hSelf = hwnd;
			::SetWindowLong(hwnd, GWL_USERDATA, (long)lParam);
			::GetWindowRect(hwnd, &(pStaticDlg->_rc));
            pStaticDlg->run_dlgProc(message, wParam, lParam);
			
			return TRUE;
		}

		default :
		{
			StaticDialog *pStaticDlg = reinterpret_cast<StaticDialog *>(::GetWindowLong(hwnd, GWL_USERDATA));
			if (!pStaticDlg)
				return FALSE;
			return pStaticDlg->run_dlgProc(message, wParam, lParam);
		}
	}
}

void StaticDialog::alignWith(HWND handle, HWND handle2Align, PosAlign pos, POINT & point)
{
    RECT rc, rc2;
    ::GetWindowRect(handle, &rc);

    point.x = rc.left;
    point.y = rc.top;

    switch (pos)
    {
        case ALIGNPOS_LEFT :
            ::GetWindowRect(handle2Align, &rc2);
            point.x -= rc2.right - rc2.left;
            break;

        case ALIGNPOS_RIGHT :
            ::GetWindowRect(handle, &rc2);
            point.x += rc2.right - rc2.left;
            break;

        case ALIGNPOS_TOP :
            ::GetWindowRect(handle2Align, &rc2);
            point.y -= rc2.bottom - rc2.top;
            break;

        default : //ALIGNPOS_BOTTOM
            ::GetWindowRect(handle, &rc2);
            point.y += rc2.bottom - rc2.top;
            break;
    }
    
    ::ScreenToClient(_hSelf, &point);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品丝袜中出| 亚洲自拍偷拍av| 亚洲成人精品一区| 丁香啪啪综合成人亚洲小说| 欧美日韩一本到| 国产欧美一区二区精品久导航| 日韩精品一级二级| 欧美伊人久久久久久午夜久久久久| 久久精品视频网| 激情六月婷婷综合| 欧美卡1卡2卡| 水蜜桃久久夜色精品一区的特点| 91一区一区三区| 国产精品国产精品国产专区不片| 狠狠色丁香久久婷婷综合_中| 欧美唯美清纯偷拍| 亚洲综合色在线| 日本高清免费不卡视频| 国产精品久久99| 成人免费视频播放| 国产精品视频观看| 成人av午夜影院| 国产精品久久久久久亚洲毛片| 韩国精品久久久| 精品国产一区久久| 久久99精品一区二区三区| 欧美一区二区免费| 麻豆国产精品官网| 欧美成人官网二区| 国产美女主播视频一区| 久久尤物电影视频在线观看| 另类小说一区二区三区| 精品蜜桃在线看| 国产毛片精品视频| 国产视频一区不卡| 成人av电影免费观看| 国产精品欧美一区喷水| 99久久99久久精品免费看蜜桃| 中文字幕亚洲一区二区av在线| 成人黄色电影在线 | 91在线国产观看| 国产精品你懂的| 91啦中文在线观看| 亚洲电影一级片| 日韩欧美你懂的| 国产美女娇喘av呻吟久久| 中文av字幕一区| 色偷偷一区二区三区| 午夜欧美视频在线观看| 日韩欧美专区在线| 国产成人aaa| 一区二区成人在线| 日韩视频一区二区三区| 国产成人在线色| 一区二区三区四区中文字幕| 91 com成人网| 粉嫩嫩av羞羞动漫久久久| 亚洲欧美色综合| 精品久久久久av影院| jlzzjlzz亚洲女人18| 午夜久久久久久久久久一区二区| 欧美一区二区三区人| 粗大黑人巨茎大战欧美成人| 亚洲一区二区五区| 精品成人在线观看| 在线免费av一区| 国内精品伊人久久久久av影院 | 一本大道久久a久久综合婷婷| 亚洲妇女屁股眼交7| 久久影院电视剧免费观看| 色吧成人激情小说| 国产伦精品一区二区三区视频青涩| 中文字幕亚洲在| 欧美精品一区二区三区久久久| 91色.com| 国产精品一区免费视频| 亚洲电影在线播放| 中文字幕不卡在线播放| 欧美一级夜夜爽| 在线亚洲一区观看| 国产成人av电影在线| 美洲天堂一区二卡三卡四卡视频| 综合分类小说区另类春色亚洲小说欧美| 在线不卡a资源高清| 99精品欧美一区二区蜜桃免费| 精品一区二区三区久久久| 亚洲六月丁香色婷婷综合久久| 国产亚洲一区二区三区| 日韩一区二区在线观看| 欧美亚洲图片小说| 91老司机福利 在线| 成人h精品动漫一区二区三区| 久久成人久久鬼色| 视频一区二区中文字幕| 一区二区三区在线视频播放| 中文字幕一区日韩精品欧美| 久久先锋影音av鲁色资源| 欧美日韩第一区日日骚| 欧美性色欧美a在线播放| 91同城在线观看| 99re成人精品视频| 不卡免费追剧大全电视剧网站| 国产+成+人+亚洲欧洲自线| 国产一区二三区| 国内精品久久久久影院薰衣草| 日日骚欧美日韩| 五月婷婷色综合| 日本在线不卡视频| 裸体一区二区三区| 久久国产精品露脸对白| 奇米色一区二区三区四区| 天天av天天翘天天综合网色鬼国产 | 一个色妞综合视频在线观看| 国产精品夫妻自拍| 国产精品久久久久婷婷 | 久久蜜臀精品av| 国产日韩欧美综合在线| 国产精品区一区二区三| 国产精品卡一卡二卡三| 亚洲同性gay激情无套| 亚洲精品成人悠悠色影视| 亚洲一区二区在线视频| 午夜电影一区二区| 极品少妇xxxx偷拍精品少妇| 国产最新精品免费| 成人app网站| 欧美性生活一区| 精品日韩欧美在线| 国产欧美日韩麻豆91| 国产精品福利电影一区二区三区四区| 亚洲少妇30p| 五月天一区二区三区| 蜜臀av一级做a爰片久久| 国产乱码精品一区二区三区av| gogo大胆日本视频一区| 在线一区二区三区四区五区| 宅男在线国产精品| 国产欧美日韩精品在线| 亚洲免费观看高清完整版在线观看熊 | 一区二区在线免费观看| 五月天精品一区二区三区| 国产一二精品视频| 色香色香欲天天天影视综合网| 欧美一区二区三区人| 中文字幕免费不卡| 婷婷夜色潮精品综合在线| 国产高清不卡一区二区| 欧美视频一区二区在线观看| 欧美zozo另类异族| 玉足女爽爽91| 国产精品一区二区久久精品爱涩| 色哟哟一区二区| 精品粉嫩aⅴ一区二区三区四区| 国产精品人妖ts系列视频| 日韩av电影免费观看高清完整版 | 日韩欧美一区电影| |精品福利一区二区三区| 蜜臀a∨国产成人精品| av欧美精品.com| 欧美成人aa大片| 亚洲一区二区av在线| 国产一区二区不卡| 欧美精品少妇一区二区三区| 国产精品对白交换视频| 久久电影国产免费久久电影| 在线观看日韩一区| 国产精品美女久久久久aⅴ| 日本亚洲视频在线| 欧美在线free| 亚洲欧美国产毛片在线| 韩国精品主播一区二区在线观看| 欧美日韩精品是欧美日韩精品| 国产精品亲子乱子伦xxxx裸| 国产自产2019最新不卡| 欧美精品精品一区| 依依成人精品视频| av日韩在线网站| 国产精品成人午夜| 国产成人精品亚洲777人妖| 欧美一区二区久久久| 亚洲成人黄色小说| 欧美视频一区二区三区| 亚洲欧美色综合| 色综合久久中文综合久久97| 中文字幕不卡三区| 国产传媒欧美日韩成人| 精品久久一区二区| 麻豆精品久久久| 26uuu精品一区二区| 天天色天天操综合| 欧美一区二区三区在线| 性感美女久久精品| 欧美理论片在线| 日韩福利视频网| 91精品婷婷国产综合久久| 香蕉av福利精品导航| 欧美日韩精品是欧美日韩精品| 亚洲一区二区三区视频在线 | 色婷婷综合久久久中文一区二区| 欧美国产日本视频|