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

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

?? jsediting.cpp

?? It is WEB browser core module with source code. Very good!
?? CPP
?? 第 1 頁 / 共 2 頁
字號:
{
    part->pasteFromPasteboard();
    return true;
}

bool execPasteAndMatchStyle(KHTMLPart *part, bool userInterface, const DOMString &value)
{
    part->pasteAndMatchStyle();
    return true;
}

bool execPrint(KHTMLPart *part, bool userInterface, const DOMString &value)
{
    part->print();
    return true;
}

bool execRedo(KHTMLPart *part, bool userInterface, const DOMString &value)
{
    part->redo();
    return true;
}

bool execSelectAll(KHTMLPart *part, bool userInterface, const DOMString &value)
{
    part->selectAll();
    return true;
}

bool execSubscript(KHTMLPart *part, bool userInterface, const DOMString &value)
{
    return execStyleChange(part, CSS_PROP_VERTICAL_ALIGN, "sub");
}

bool execSuperscript(KHTMLPart *part, bool userInterface, const DOMString &value)
{
    return execStyleChange(part, CSS_PROP_VERTICAL_ALIGN, "super");
}

bool execUnderline(KHTMLPart *part, bool userInterface, const DOMString &value)
{
    bool isUnderlined = selectionStartHasStyle(part, CSS_PROP__KHTML_TEXT_DECORATIONS_IN_EFFECT, "underline");
    return execStyleChange(part, CSS_PROP__KHTML_TEXT_DECORATIONS_IN_EFFECT, isUnderlined ? "none" : "underline");
}

bool execUndo(KHTMLPart *part, bool userInterface, const DOMString &value)
{
    part->undo();
    return true;
}

bool execUnselect(KHTMLPart *part, bool userInterface, const DOMString &value)
{
    part->clearSelection();
    return true;
}

// =============================================================================================
//
// queryCommandEnabled implementations
//
// It's a bit difficult to get a clear notion of the difference between
// "supported" and "enabled" from reading the Microsoft documentation, but
// what little I could glean from that seems to make some sense.
//     Supported = The command is supported by this object.
//     Enabled =   The command is available and enabled.

bool enabled(KHTMLPart *part)
{
    return true;
}

bool enabledAnySelection(KHTMLPart *part)
{
    return part->selection().isCaretOrRange();
}

bool enabledPaste(KHTMLPart *part)
{
    return supportsPasteCommand && part->canPaste();
}

bool enabledPasteAndMatchStyle(KHTMLPart *part)
{
    return supportsPasteCommand && part->canPaste();
}

bool enabledRangeSelection(KHTMLPart *part)
{
    return part->selection().isRange();
}

bool enabledRedo(KHTMLPart *part)
{
    return part->canRedo();
}

bool enabledUndo(KHTMLPart *part)
{
    return part->canUndo();
}

// =============================================================================================
//
// queryCommandIndeterm/State implementations
//
// It's a bit difficult to get a clear notion of what these methods are supposed
// to do from reading the Microsoft documentation, but my current guess is this:
//
//     queryCommandState and queryCommandIndeterm work in concert to return
//     the two bits of information that are needed to tell, for instance,
//     if the text of a selection is bold. The answer can be "yes", "no", or
//     "partially".
//
// If this is so, then queryCommandState should return "yes" in the case where
// all the text is bold and "no" for non-bold or partially-bold text.
// Then, queryCommandIndeterm should return "no" in the case where
// all the text is either all bold or not-bold and and "yes" for partially-bold text.

KHTMLPart::TriState stateNone(KHTMLPart *part)
{
    return KHTMLPart::falseTriState;
}

KHTMLPart::TriState stateBold(KHTMLPart *part)
{
    return stateStyle(part, CSS_PROP_FONT_WEIGHT, "bold");
}

KHTMLPart::TriState stateItalic(KHTMLPart *part)
{
    return stateStyle(part, CSS_PROP_FONT_STYLE, "italic");
}

KHTMLPart::TriState stateSubscript(KHTMLPart *part)
{
    return stateStyle(part, CSS_PROP_VERTICAL_ALIGN, "sub");
}

KHTMLPart::TriState stateSuperscript(KHTMLPart *part)
{
    return stateStyle(part, CSS_PROP_VERTICAL_ALIGN, "super");
}

KHTMLPart::TriState stateUnderline(KHTMLPart *part)
{
    return stateStyle(part, CSS_PROP_TEXT_DECORATION, "underline");
}

// =============================================================================================
//
// queryCommandValue implementations
//

DOMString valueNull(KHTMLPart *part)
{
    return DOMString();
}

DOMString valueBackColor(KHTMLPart *part)
{
    return valueStyle(part, CSS_PROP_BACKGROUND_COLOR);
}

DOMString valueFontName(KHTMLPart *part)
{
    return valueStyle(part, CSS_PROP_FONT_FAMILY);
}

DOMString valueFontSize(KHTMLPart *part)
{
    return valueStyle(part, CSS_PROP_FONT_SIZE);
}

DOMString valueFontSizeDelta(KHTMLPart *part)
{
    return valueStyle(part, CSS_PROP__KHTML_FONT_SIZE_DELTA);
}

DOMString valueForeColor(KHTMLPart *part)
{
    return valueStyle(part, CSS_PROP_COLOR);
}

// =============================================================================================

QDict<CommandImp> createCommandDictionary()
{
    struct EditorCommand { const char *name; CommandImp imp; };

    static const EditorCommand commands[] = {

        { "BackColor", { execBackColor, enabled, stateNone, valueBackColor } },
        { "Bold", { execBold, enabledAnySelection, stateBold, valueNull } },
        { "Copy", { execCopy, enabledRangeSelection, stateNone, valueNull } },
        { "Cut", { execCut, enabledRangeSelection, stateNone, valueNull } },
        { "Delete", { execDelete, enabledAnySelection, stateNone, valueNull } },
        { "FontName", { execFontName, enabledAnySelection, stateNone, valueFontName } },
        { "FontSize", { execFontSize, enabledAnySelection, stateNone, valueFontSize } },
        { "FontSizeDelta", { execFontSizeDelta, enabledAnySelection, stateNone, valueFontSizeDelta } },
        { "ForeColor", { execForeColor, enabledAnySelection, stateNone, valueForeColor } },
        { "ForwardDelete", { execForwardDelete, enabledAnySelection, stateNone, valueNull } },
        { "Indent", { execIndent, enabledAnySelection, stateNone, valueNull } },
        { "InsertLineBreak", { execInsertLineBreak, enabledAnySelection, stateNone, valueNull } },
        { "InsertParagraph", { execInsertParagraph, enabledAnySelection, stateNone, valueNull } },
        { "InsertText", { execInsertText, enabledAnySelection, stateNone, valueNull } },
        { "Italic", { execItalic, enabledAnySelection, stateItalic, valueNull } },
        { "JustifyCenter", { execJustifyCenter, enabledAnySelection, stateNone, valueNull } },
        { "JustifyFull", { execJustifyFull, enabledAnySelection, stateNone, valueNull } },
        { "JustifyLeft", { execJustifyLeft, enabledAnySelection, stateNone, valueNull } },
        { "JustifyNone", { execJustifyLeft, enabledAnySelection, stateNone, valueNull } },
        { "JustifyRight", { execJustifyRight, enabledAnySelection, stateNone, valueNull } },
        { "Outdent", { execOutdent, enabledAnySelection, stateNone, valueNull } },
        { "Paste", { execPaste, enabledPaste, stateNone, valueNull } },
        { "PasteAndMatchStyle", { execPasteAndMatchStyle, enabledPasteAndMatchStyle, stateNone, valueNull } },
        { "Print", { execPrint, enabled, stateNone, valueNull } },
        { "Redo", { execRedo, enabledRedo, stateNone, valueNull } },
        { "SelectAll", { execSelectAll, enabled, stateNone, valueNull } },
        { "Subscript", { execSubscript, enabledAnySelection, stateSubscript, valueNull } },
        { "Superscript", { execSuperscript, enabledAnySelection, stateSuperscript, valueNull } },
        { "Underline", { execUnderline, enabledAnySelection, stateUnderline, valueNull } },
        { "Undo", { execUndo, enabledUndo, stateNone, valueNull } },
        { "Unselect", { execUnselect, enabledAnySelection, stateNone, valueNull } }

        //
        // The "unsupported" commands are listed here since they appear in the Microsoft
        // documentation used as the basis for the list.
        //

        // 2D-Position (not supported)
        // AbsolutePosition (not supported)
        // BlockDirLTR (not supported)
        // BlockDirRTL (not supported)
        // BrowseMode (not supported)
        // ClearAuthenticationCache (not supported)
        // CreateBookmark (not supported)
        // CreateLink (not supported)
        // DirLTR (not supported)
        // DirRTL (not supported)
        // EditMode (not supported)
        // FormatBlock (not supported)
        // InlineDirLTR (not supported)
        // InlineDirRTL (not supported)
        // InsertButton (not supported)
        // InsertFieldSet (not supported)
        // InsertHorizontalRule (not supported)
        // InsertIFrame (not supported)
        // InsertImage (not supported)
        // InsertInputButton (not supported)
        // InsertInputCheckbox (not supported)
        // InsertInputFileUpload (not supported)
        // InsertInputHidden (not supported)
        // InsertInputImage (not supported)
        // InsertInputPassword (not supported)
        // InsertInputRadio (not supported)
        // InsertInputReset (not supported)
        // InsertInputSubmit (not supported)
        // InsertInputText (not supported)
        // InsertMarquee (not supported)
        // InsertOrderedList (not supported)
        // InsertSelectDropDown (not supported)
        // InsertSelectListBox (not supported)
        // InsertTextArea (not supported)
        // InsertUnorderedList (not supported)
        // LiveResize (not supported)
        // MultipleSelection (not supported)
        // Open (not supported)
        // Overwrite (not supported)
        // PlayImage (not supported)
        // Refresh (not supported)
        // RemoveFormat (not supported)
        // RemoveParaFormat (not supported)
        // SaveAs (not supported)
        // SizeToControl (not supported)
        // SizeToControlHeight (not supported)
        // SizeToControlWidth (not supported)
        // Stop (not supported)
        // StopImage (not supported)
        // Strikethrough (not supported)
        // Unbookmark (not supported)
        // Unlink (not supported)
    };

    const int numCommands = sizeof(commands) / sizeof(commands[0]);
    QDict<CommandImp> commandDictionary(numCommands, false); // case-insensitive dictionary
    for (int i = 0; i < numCommands; ++i) {
        commandDictionary.insert(commands[i].name, &commands[i].imp);
    }
#ifndef NDEBUG
    supportsPasteCommand = true;
#endif
    return commandDictionary;
}

} // anonymous namespace

} // namespace DOM

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品va天堂亚洲国产| 麻豆一区二区99久久久久| 亚洲国产日日夜夜| 国产精品系列在线播放| 欧美日韩在线播| 国产精品嫩草影院av蜜臀| 六月丁香婷婷久久| 欧美色图在线观看| 国产精品夫妻自拍| 国产呦萝稀缺另类资源| 欧美人体做爰大胆视频| 亚洲一区在线观看视频| 成人av午夜电影| 国产视频一区二区三区在线观看| www国产精品av| 久久激情综合网| 欧美精品第1页| 亚洲a一区二区| 在线欧美日韩国产| 亚洲激情图片一区| 色偷偷成人一区二区三区91| 中文字幕一区二区三区在线观看| 国产乱子伦一区二区三区国色天香| 8v天堂国产在线一区二区| 亚洲影院理伦片| 欧美日韩一区小说| 亚洲国产综合在线| 欧美性xxxxxx少妇| 亚洲老司机在线| 91在线码无精品| 亚洲综合在线免费观看| 色天使久久综合网天天| 亚洲精品国产a| 欧美综合一区二区| 天堂va蜜桃一区二区三区 | 91精品国产综合久久久蜜臀粉嫩 | 精品影院一区二区久久久| 日韩一区二区三区视频在线观看| 丝袜诱惑亚洲看片| 日韩视频永久免费| 国产成人综合亚洲网站| 国产精品国产三级国产aⅴ中文| 粗大黑人巨茎大战欧美成人| 国产精品久久久一本精品 | 精品国产麻豆免费人成网站| 美女一区二区三区| 久久久精品黄色| 97国产精品videossex| 夜夜嗨av一区二区三区四季av| 欧美自拍偷拍午夜视频| 青青国产91久久久久久| 久久精品视频在线免费观看| caoporm超碰国产精品| 一区二区欧美精品| 日韩欧美中文一区| 岛国精品一区二区| 亚洲一区二区三区在线播放| 日韩女优制服丝袜电影| 成人avav影音| 首页国产欧美久久| 国产视频一区在线观看| 91黄色激情网站| 精品亚洲国产成人av制服丝袜| 国产欧美精品一区aⅴ影院| 日本韩国一区二区| 韩日欧美一区二区三区| 亚洲精品中文在线| 欧美精品一区二区高清在线观看| 波多野结衣亚洲| 日韩精品电影在线观看| 国产精品久久久久久久久搜平片| 欧美午夜理伦三级在线观看| 国产一区二区剧情av在线| 亚洲一区免费视频| 国产欧美视频一区二区| 欧美日韩在线三级| 99国产欧美久久久精品| 麻豆免费精品视频| 一区二区三区在线观看网站| 精品电影一区二区| 欧美久久一区二区| 色屁屁一区二区| 国产盗摄女厕一区二区三区| 青青草97国产精品免费观看 | 日本特黄久久久高潮| 亚洲特黄一级片| 26uuu亚洲综合色欧美| 欧美喷水一区二区| 欧美在线观看一区| 99久久国产综合精品麻豆 | 久久国产三级精品| 亚洲香肠在线观看| 日韩毛片在线免费观看| 久久品道一品道久久精品| 欧美精品日韩精品| 欧美在线观看一二区| 丁香天五香天堂综合| 国产综合色在线| 久久精品久久99精品久久| 午夜日韩在线电影| 亚洲一区二区三区在线| 亚洲视频小说图片| 国产精品久久国产精麻豆99网站| 久久这里都是精品| 精品国产乱码久久久久久1区2区| 在线播放91灌醉迷j高跟美女| 欧洲精品在线观看| 色婷婷综合五月| 91成人在线精品| 欧美亚洲一区三区| 欧美日韩精品系列| 欧美高清性hdvideosex| 7777精品伊人久久久大香线蕉的| 欧美日韩午夜精品| 精品视频1区2区| 欧美午夜视频网站| 91精品国产综合久久小美女| 日韩一级高清毛片| 久久你懂得1024| 国产精品久久久久久久久果冻传媒 | 国产在线麻豆精品观看| 久久er99精品| 狠狠色丁香久久婷婷综| 国产电影一区在线| 色一情一乱一乱一91av| 欧美网站一区二区| 制服丝袜av成人在线看| 精品成人佐山爱一区二区| 久久久精品免费免费| 亚洲欧洲日韩在线| 亚洲线精品一区二区三区八戒| 三级久久三级久久久| 狠狠色伊人亚洲综合成人| 成人小视频在线观看| 在线观看亚洲a| 日韩欧美在线1卡| 国产欧美一二三区| 一区二区在线观看视频| 日本女人一区二区三区| 国产一区二区91| 色呦呦网站一区| 欧美一区二区三区免费在线看 | 欧美日韩国产成人在线91| 日韩一区和二区| 国产精品入口麻豆九色| 亚洲电影在线免费观看| 国产一区二区三区香蕉| 91香蕉国产在线观看软件| 欧美日韩免费高清一区色橹橹| 精品国产伦一区二区三区免费| 中文字幕在线观看不卡视频| 日韩高清欧美激情| 成人免费黄色在线| 欧美一级精品在线| 亚洲丝袜制服诱惑| 美日韩一级片在线观看| 91久久精品网| 欧美国产精品一区| 免费xxxx性欧美18vr| 91一区二区在线观看| 2024国产精品| 亚洲一二三四在线观看| 国产不卡高清在线观看视频| 91精品欧美久久久久久动漫| 亚洲三级在线看| 韩国三级电影一区二区| 欧美日韩中文另类| 亚洲视频免费观看| 国产成人免费xxxxxxxx| 日韩亚洲欧美高清| 亚洲最新视频在线播放| 国产成人亚洲精品狼色在线 | 日本欧美大码aⅴ在线播放| 99热这里都是精品| 久久久久国色av免费看影院| 日本sm残虐另类| 欧美日韩一区国产| 一区二区在线观看视频在线观看| 国产超碰在线一区| 精品福利在线导航| 青娱乐精品在线视频| 欧美电影在线免费观看| 亚洲国产综合色| 日本高清免费不卡视频| 亚洲视频香蕉人妖| 99国产精品久| 中文字幕一区二区不卡| 国产成人在线视频网站| 久久久久国产成人精品亚洲午夜| 日本va欧美va瓶| 欧美电影免费观看高清完整版在线| 亚洲成人av资源| 欧美日韩日日骚| 日韩精品一二区| 日韩欧美中文字幕一区| 麻豆91精品视频| 久久综合狠狠综合久久综合88 | 美女视频黄久久| 精品日韩欧美在线| 老司机午夜精品99久久|