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

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

?? wordstyledlg.h.dockable

?? 一個功能強大的代碼編輯器源代碼
?? DOCKABLE
字號:
/*
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.
*/

#ifndef WORD_STYLE_H
#define WORD_STYLE_H

#include "Window.h"
#include "ColourPicker.h"
//#include "StaticDialog.h"
#include "DockingDlgInterface.h"

#include "WordStyleDlgRes.h"
#include "TabBar.h"
#include "Parameters.h"
#include "resource.h"

#define WM_UPDATESCINTILLAS  (WORDSTYLE_USER + 1) //GlobalStyleDlg's msg 2 send 2 its parent
#define WM_DATA_MODIFIED     (WORDSTYLE_USER + 2) //WordStyleDlg's msg 2 send 2 its parent(GlobalStyleDlg)

enum fontStyleType {BOLD_STATUS, ITALIC_STATUS, UNDERLINE_STATUS};

const bool C_FOREGROUND = false;
const bool C_BACKGROUND = true;


class ColourStaticTextHooker {
public :
	ColourStaticTextHooker() : _colour(RGB(0x00, 0x00, 0x00)), _hFont(NULL) {};

	COLORREF setColour(COLORREF colour2Set) {
		COLORREF oldColour = _colour;
		_colour = colour2Set;
		return oldColour;
	};
	void hookOn(HWND staticHandle) {
		::SetWindowLong(staticHandle, GWL_USERDATA, (LONG)this);
		_oldProc = (WNDPROC)::SetWindowLong(staticHandle, GWL_WNDPROC, (LONG)staticProc);
	};
private :
	COLORREF _colour;
	WNDPROC _oldProc;
	HFONT _hFont;

	static BOOL CALLBACK staticProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam){
		ColourStaticTextHooker *pColourStaticTextHooker = reinterpret_cast<ColourStaticTextHooker *>(::GetWindowLong(hwnd, GWL_USERDATA));
		return pColourStaticTextHooker->colourStaticProc(hwnd, message, wParam, lParam);
	}; 
	BOOL CALLBACK colourStaticProc(HWND hwnd, UINT Message, WPARAM wParam, LPARAM lParam);
};

//class WordStyleDlg : public StaticDialog
class WordStyleDlg : public DockingDlgInterface
{
public :
	WordStyleDlg():DockingDlgInterface(IDD_STYLER_DLG), _isDirty(false), _isSync(true){_originalWarning[0] = '\0';};

    void init(HINSTANCE hInst, HWND parent)	{
        Window::init(hInst, parent);
	};

	void create(tTbData * data, bool isRTL = false);
/*
    void doDialog(bool isRTL = false) {
    	if (!isCreated())
			create(IDD_STYLER_DLG, isRTL);
	    display();
    };
*/
    virtual void redraw() const {
        _pFgColour->redraw();
        _pBgColour->redraw();
		//StaticDialog::redraw();
		::InvalidateRect(_hStyleInfoStaticText, NULL, TRUE);
		::UpdateWindow(_hStyleInfoStaticText);
    };



private :
    ColourPicker *_pFgColour;
    ColourPicker *_pBgColour;

    int _currentLexerIndex;

	HWND _hStyleList;
    HWND _hCheckBold;
    HWND _hCheckItalic;
	HWND _hCheckUnderline;
    HWND _hFontNameCombo;
    HWND _hFontSizeCombo;

	HWND _hFgColourStaticText;
	HWND _hBgColourStaticText;
	HWND _hFontNameStaticText;
	HWND _hFontSizeStaticText;
	HWND _hStyleInfoStaticText;
	char _originalWarning[256];

	LexerStylerArray _lsArray;
    StyleArray _globalStyles;

	ColourStaticTextHooker colourHooker;

	bool _isDirty;
    bool _isSync;

	BOOL CALLBACK run_dlgProc(UINT Message, WPARAM wParam, LPARAM lParam);


	Style & getCurrentStyler() {
		int styleIndex = int(::SendMessage(_hStyleList, LB_GETCURSEL, 0, 0));
        if (_currentLexerIndex == 0)
            return _globalStyles.getStyler(styleIndex);
        else
        {
		    LexerStyler & lexerStyler = _lsArray.getLexerFromIndex(_currentLexerIndex - 1);
		    return lexerStyler.getStyler(styleIndex);
        }
	};

	void updateColour(bool which);
	void updateFontStyleStatus(fontStyleType whitchStyle);
	void updateExtension();
	void updateFontName();
	void updateFontSize();
	void updateUserKeywords();

	void enableFg(bool isEnable) {
		::EnableWindow(_pFgColour->getHSelf(), isEnable);
		::EnableWindow(_hFgColourStaticText, isEnable);
	};

	void enableBg(bool isEnable) {
		::EnableWindow(_pBgColour->getHSelf(), isEnable);
		::EnableWindow(_hBgColourStaticText, isEnable);
	};

	void enableFontName(bool isEnable) {
		::EnableWindow(_hFontNameCombo, isEnable);
		::EnableWindow(_hFontNameStaticText, isEnable);
	};

	void enableFontSize(bool isEnable) {
		::EnableWindow(_hFontSizeCombo, isEnable);
		::EnableWindow(_hFontSizeStaticText, isEnable);
	};

	void enableFontStyle(bool isEnable) {
		::EnableWindow(_hCheckBold, isEnable);
		::EnableWindow(_hCheckItalic, isEnable);
		::EnableWindow(_hCheckUnderline, isEnable);
	};
    long notifyDataModified() {
		_isDirty = true;
		::EnableWindow(::GetDlgItem(_hSelf, IDOK), TRUE);
		::EnableWindow(::GetDlgItem(_hSelf, IDC_SAVECLOSE_BUTTON), TRUE);
		return TRUE;
    }
	void setStyleListFromLexer(int index);
    void setVisualFromStyleList();
};

#endif //WORD_STYLE_H

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜激情一区二区三区| 国产精品久久影院| 91国产成人在线| 成人av在线资源| 国产东北露脸精品视频| 捆绑调教一区二区三区| 天堂在线亚洲视频| 麻豆久久一区二区| 精品一区二区三区影院在线午夜 | 欧美日韩精品一区二区三区| 成人美女视频在线观看| av电影天堂一区二区在线观看| 99精品欧美一区二区三区综合在线| 不卡一区二区三区四区| 99久久777色| 在线观看国产日韩| 欧美日韩在线三级| 日韩精品专区在线影院重磅| 日韩三级精品电影久久久 | 欧美激情一区二区三区不卡| 久久九九99视频| 亚洲三级免费观看| 午夜精品久久久久久久久久| 久久99深爱久久99精品| 成人一区在线看| 在线日韩一区二区| 日韩欧美电影一二三| 国产欧美日韩三区| 亚洲小说欧美激情另类| 久久国产视频网| www.欧美日韩国产在线| 欧美日韩在线播放一区| 久久色在线观看| 亚洲视频每日更新| 精品一区二区三区香蕉蜜桃| 精品奇米国产一区二区三区| 欧美成人a在线| 国产精品短视频| 日本网站在线观看一区二区三区| 国产在线精品免费av| 91视频精品在这里| 久久综合九色综合97_久久久| 亚洲欧洲无码一区二区三区| 五月综合激情日本mⅴ| 波多野洁衣一区| 日韩午夜av一区| 亚洲欧美另类综合偷拍| 久久精品国产亚洲aⅴ| 色综合视频在线观看| 久久久久久久久久久久久女国产乱 | 99精品视频在线观看免费| 欧美色图12p| 国产精品妹子av| 国产自产2019最新不卡| 在线观看av一区| 中文字幕日韩欧美一区二区三区| 男人操女人的视频在线观看欧美| 99久久精品免费看| 久久伊99综合婷婷久久伊| 午夜亚洲福利老司机| 91在线小视频| 国产精品伦一区| 国产一区欧美一区| 欧美一区二区三区免费大片| 一区二区不卡在线视频 午夜欧美不卡在| 国产又粗又猛又爽又黄91精品| 欧美性极品少妇| 一级日本不卡的影视| 成人午夜视频在线| 国产日韩欧美在线一区| 久久国产视频网| 欧美成人三级在线| 免费观看30秒视频久久| 3d动漫精品啪啪一区二区竹菊| 亚洲国产成人精品视频| 欧美主播一区二区三区美女| 亚洲主播在线播放| 欧美日本视频在线| 免费成人av资源网| 精品国产三级电影在线观看| 精品在线观看视频| 国产亚洲制服色| 夫妻av一区二区| 亚洲国产精品成人综合| 成人一区二区视频| 亚洲综合色区另类av| 欧美三级日本三级少妇99| 一区二区在线观看av| 欧美三级在线看| 日本最新不卡在线| 亚洲精品一区二区三区影院 | 中文字幕一区在线| 99国产精品99久久久久久| 亚洲另类在线一区| 91.com视频| 国产伦理精品不卡| 亚洲欧美一区二区三区极速播放| 色成人在线视频| 丝袜a∨在线一区二区三区不卡| 91精品蜜臀在线一区尤物| 国模大尺度一区二区三区| 欧美韩国日本综合| 欧美性三三影院| 久久99久久99| 亚洲日本免费电影| 日韩欧美国产午夜精品| 成人手机在线视频| 午夜精品福利在线| 中文字幕精品三区| 欧美精品日韩一本| 成人av综合一区| 日本亚洲视频在线| 一区二区中文视频| 欧美电视剧免费全集观看| 97精品电影院| 麻豆精品一区二区三区| 日韩理论片在线| 久久这里都是精品| 欧美乱妇23p| av激情综合网| 国产精品中文欧美| 天天操天天综合网| 亚洲人快播电影网| 国产欧美一区二区三区在线老狼| 欧美色电影在线| a美女胸又www黄视频久久| 蜜桃av噜噜一区| 亚洲高清在线精品| 国产精品久久久久久福利一牛影视 | 久久久久久99精品| 欧美二区三区91| 一本高清dvd不卡在线观看| 国产一二精品视频| 日韩精品色哟哟| 亚洲高清免费观看高清完整版在线观看| 久久久久国产一区二区三区四区| 欧美日本乱大交xxxxx| 色综合中文字幕| av中文字幕亚洲| 国产aⅴ综合色| 国产麻豆一精品一av一免费| 图片区小说区区亚洲影院| 日韩理论电影院| 亚洲四区在线观看| 国产精品对白交换视频| 国产精品嫩草久久久久| 欧美—级在线免费片| 久久久久久久一区| 久久久精品国产免大香伊| 精品国产乱码久久久久久1区2区 | 日本美女一区二区| 日韩有码一区二区三区| 亚洲www啪成人一区二区麻豆| 亚洲精品国产精品乱码不99| 亚洲人成亚洲人成在线观看图片| 国产蜜臀av在线一区二区三区| 国产欧美一区二区精品性| 国产清纯美女被跳蛋高潮一区二区久久w | 欧美视频完全免费看| 日本乱码高清不卡字幕| 91国产成人在线| 在线成人av影院| 日韩视频不卡中文| 欧美xxxxxxxxx| 久久精品一二三| 中文字幕五月欧美| 一个色在线综合| 秋霞av亚洲一区二区三| 麻豆精品一区二区三区| 国产成人综合网站| 99国内精品久久| 欧美久久一二三四区| 日韩美女天天操| 中文字幕国产一区二区| 亚洲欧美激情视频在线观看一区二区三区| 亚洲黄一区二区三区| 天堂影院一区二区| 国产成人精品网址| 欧美影院一区二区三区| 91精品国产综合久久香蕉的特点 | 樱桃视频在线观看一区| 亚洲成人综合在线| 精品伊人久久久久7777人| 国产精品羞羞答答xxdd| 色94色欧美sute亚洲线路二| 欧美一区二区三区白人| 国产精品情趣视频| 五月婷婷色综合| eeuss鲁一区二区三区| 884aa四虎影成人精品一区| 国产欧美日韩在线观看| 天堂在线一区二区| 成人高清在线视频| 在线综合视频播放| 亚洲卡通欧美制服中文| 韩国在线一区二区| 欧美日韩三级在线| 国产精品入口麻豆原神| 美女视频一区二区| 91视频在线观看免费|