├── uidata ├── uidata │ ├── data │ │ ├── data.txt │ │ ├── txt │ │ │ ├── 123.txt │ │ │ └── 456.txt │ │ └── xml │ │ │ ├── data.xml │ │ │ └── window.xml │ ├── skin │ │ ├── images │ │ │ ├── 0.gif │ │ │ ├── 3.gif │ │ │ ├── 514540469.png │ │ │ └── nineimage.png │ │ └── common │ │ │ ├── button.png │ │ │ ├── checkBox.png │ │ │ ├── header.png │ │ │ ├── radioBox.png │ │ │ ├── headerArrow.png │ │ │ ├── horzScrollBkg.png │ │ │ ├── vertScrollBkg.png │ │ │ ├── horzScrollBlock.png │ │ │ ├── sys_max_button.png │ │ │ ├── sys_min_button.png │ │ │ ├── vertScrollBlock.png │ │ │ ├── horzScrollSlider.png │ │ │ ├── sys_close_button.png │ │ │ └── vertScrollSlider.png │ ├── string │ │ └── 2052 │ │ │ └── Common.xml │ ├── package.xml │ └── style │ │ ├── sys_default_style.xml │ │ ├── LayoutTest.xml │ │ └── AboutUI.xml ├── WeChat │ ├── skin │ │ ├── main │ │ │ ├── msg.png │ │ │ ├── send.png │ │ │ ├── cancel.png │ │ │ ├── config.png │ │ │ ├── contact.png │ │ │ ├── fileTab.png │ │ │ ├── search.png │ │ │ ├── contactBkg.png │ │ │ ├── emotionTab.png │ │ │ └── emotions.png │ │ ├── common │ │ │ ├── button.png │ │ │ ├── header.png │ │ │ ├── loading.gif │ │ │ ├── headerArrow.png │ │ │ ├── horzScrollBkg.png │ │ │ ├── vertScrollBkg.png │ │ │ ├── horzScrollBlock.png │ │ │ ├── sys_max_button.png │ │ │ ├── sys_min_button.png │ │ │ ├── vertScrollBlock.png │ │ │ ├── horzScrollSlider.png │ │ │ ├── sys_close_button.png │ │ │ └── vertScrollSlider.png │ │ └── mockup │ │ │ └── avatar.png │ ├── string │ │ └── 2052 │ │ │ ├── Common.xml │ │ │ ├── LoginUi.xml │ │ │ └── MainUi.xml │ ├── package.xml │ └── style │ │ ├── EmotionUi.xml │ │ ├── sys_default_style.xml │ │ └── LoginUi.xml ├── UIEditor │ ├── skin │ │ └── common │ │ │ ├── button.png │ │ │ ├── header.png │ │ │ ├── headerArrow.png │ │ │ ├── horzScrollBkg.png │ │ │ ├── vertScrollBkg.png │ │ │ ├── horzScrollBlock.png │ │ │ ├── horzScrollSlider.png │ │ │ ├── sys_close_button.png │ │ │ ├── sys_max_button.png │ │ │ ├── sys_min_button.png │ │ │ ├── vertScrollBlock.png │ │ │ └── vertScrollSlider.png │ ├── string │ │ └── 2052 │ │ │ ├── Main.xml │ │ │ └── Common.xml │ ├── package.xml │ └── style │ │ ├── PromptUI.xml │ │ ├── sys_default_style.xml │ │ └── MainUI.xml └── ImageEditor │ ├── skin │ ├── common │ │ ├── button.png │ │ ├── checkBox.png │ │ ├── radioBox.png │ │ ├── sys_max_button.png │ │ ├── sys_min_button.png │ │ └── sys_close_button.png │ └── images │ │ └── nineimage.png │ ├── string │ └── 2052 │ │ ├── Common.xml │ │ └── Main.xml │ ├── package.xml │ └── style │ └── sys_default_style.xml ├── autotest ├── TestData │ ├── Zip │ │ ├── Data │ │ │ ├── 1 │ │ │ │ ├── 11 │ │ │ │ │ └── 111.txt │ │ │ │ └── 11.txt │ │ │ └── 2 │ │ │ │ ├── 22 │ │ │ │ └── 222.txt │ │ │ │ └── 22.txt │ │ └── Data.zip │ ├── FileUtil │ │ └── 1.txt │ ├── FileMapping │ │ └── 1.txt │ ├── resource │ │ └── package │ │ │ ├── data │ │ │ ├── data.txt │ │ │ ├── txt │ │ │ │ ├── 123.txt │ │ │ │ └── 456.txt │ │ │ └── xml │ │ │ │ ├── data.xml │ │ │ │ └── window.xml │ │ │ ├── style │ │ │ ├── AboutUI.xml │ │ │ └── TestUI.xml │ │ │ ├── package.xml │ │ │ └── string │ │ │ └── 2052 │ │ │ └── 1.xml │ └── images │ │ └── button.png ├── TestFrameParser.h ├── TestStringBundle.h ├── stdafx.cpp ├── TestCore.h ├── TestModule.h ├── stdafx.h ├── targetver.h ├── TestFileMapping.h ├── TestBuffer.h └── TestDelayedRelease.h ├── thirdparty ├── jsoncpp │ ├── version │ ├── devtools │ │ └── __init__.py │ ├── test │ │ ├── jsonchecker │ │ │ ├── fail29.json │ │ │ ├── fail30.json │ │ │ ├── fail16.json │ │ │ ├── fail31.json │ │ │ ├── fail2.json │ │ │ ├── fail24.json │ │ │ ├── fail33.json │ │ │ ├── fail4.json │ │ │ ├── fail8.json │ │ │ ├── fail23.json │ │ │ ├── fail27.json │ │ │ ├── fail28.json │ │ │ ├── fail9.json │ │ │ ├── fail19.json │ │ │ ├── fail20.json │ │ │ ├── fail5.json │ │ │ ├── fail6.json │ │ │ ├── fail7.json │ │ │ ├── fail11.json │ │ │ ├── fail12.json │ │ │ ├── fail14.json │ │ │ ├── fail25.json │ │ │ ├── fail15.json │ │ │ ├── fail17.json │ │ │ ├── fail21.json │ │ │ ├── fail22.json │ │ │ ├── fail3.json │ │ │ ├── fail26.json │ │ │ ├── fail32.json │ │ │ ├── fail13.json │ │ │ ├── fail18.json │ │ │ ├── pass2.json │ │ │ ├── fail1.json │ │ │ ├── fail10.json │ │ │ ├── pass3.json │ │ │ └── readme.txt │ │ ├── data │ │ │ ├── test_array_01.json │ │ │ ├── test_array_02.json │ │ │ ├── test_object_01.json │ │ │ ├── test_array_01.expected │ │ │ ├── test_basic_01.json │ │ │ ├── test_basic_02.json │ │ │ ├── test_basic_05.json │ │ │ ├── test_basic_06.json │ │ │ ├── test_basic_07.json │ │ │ ├── test_integer_05.json │ │ │ ├── test_object_01.expected │ │ │ ├── fail_test_array_01.json │ │ │ ├── test_array_03.json │ │ │ ├── test_basic_01.expected │ │ │ ├── test_basic_02.expected │ │ │ ├── test_basic_04.json │ │ │ ├── test_basic_05.expected │ │ │ ├── test_basic_06.expected │ │ │ ├── test_basic_07.expected │ │ │ ├── test_basic_08.expected │ │ │ ├── test_basic_09.expected │ │ │ ├── test_integer_04.expected │ │ │ ├── test_integer_05.expected │ │ │ ├── test_string_unicode_01.json │ │ │ ├── test_string_unicode_02.json │ │ │ ├── test_string_unicode_03.json │ │ │ ├── test_array_02.expected │ │ │ ├── test_array_04.json │ │ │ ├── test_basic_03.json │ │ │ ├── test_basic_04.expected │ │ │ ├── test_integer_01.expected │ │ │ ├── test_integer_02.expected │ │ │ ├── test_integer_03.expected │ │ │ ├── test_object_02.json │ │ │ ├── test_object_04.expected │ │ │ ├── test_real_01.expected │ │ │ ├── test_real_02.expected │ │ │ ├── test_real_03.expected │ │ │ ├── test_real_04.expected │ │ │ ├── test_string_unicode_01.expected │ │ │ ├── test_string_unicode_02.expected │ │ │ ├── test_string_unicode_03.expected │ │ │ ├── test_string_unicode_04.expected │ │ │ ├── test_string_unicode_04.json │ │ │ ├── test_basic_03.expected │ │ │ ├── test_object_02.expected │ │ │ ├── test_object_04.json │ │ │ ├── test_real_05.expected │ │ │ ├── test_real_06.expected │ │ │ ├── test_real_07.expected │ │ │ ├── test_string_unicode_05.json │ │ │ ├── test_basic_08.json │ │ │ ├── test_integer_04.json │ │ │ ├── test_integer_06_64bits.expected │ │ │ ├── test_integer_06_64bits.json │ │ │ ├── test_integer_07_64bits.expected │ │ │ ├── test_integer_07_64bits.json │ │ │ ├── test_integer_08_64bits.expected │ │ │ ├── test_integer_08_64bits.json │ │ │ ├── test_real_04.json │ │ │ ├── test_real_05.json │ │ │ ├── test_real_06.json │ │ │ ├── test_real_07.json │ │ │ ├── test_string_03.expected │ │ │ ├── test_basic_09.json │ │ │ ├── test_integer_01.json │ │ │ ├── test_integer_02.json │ │ │ ├── test_integer_03.json │ │ │ ├── test_string_03.json │ │ │ ├── test_string_unicode_05.expected │ │ │ ├── test_preserve_comment_01.expected │ │ │ ├── test_array_04.expected │ │ │ ├── test_array_03.expected │ │ │ ├── test_object_03.expected │ │ │ ├── test_real_01.json │ │ │ ├── test_object_03.json │ │ │ ├── test_real_02.json │ │ │ ├── test_real_03.json │ │ │ ├── test_string_01.expected │ │ │ ├── test_string_01.json │ │ │ ├── test_comment_01.expected │ │ │ ├── test_array_06.json │ │ │ ├── test_comment_01.json │ │ │ ├── test_array_06.expected │ │ │ ├── test_preserve_comment_01.json │ │ │ ├── test_complex_01.json │ │ │ ├── test_array_05.json │ │ │ └── test_complex_01.expected │ │ ├── cleantests.py │ │ └── generate_expected.py │ ├── AUTHORS │ ├── doc │ │ ├── readme.txt │ │ ├── footer.html │ │ └── header.html │ ├── src │ │ ├── lib_json │ │ │ └── sconscript │ │ ├── jsontestrunner │ │ │ └── sconscript │ │ └── test_lib_json │ │ │ └── sconscript │ └── include │ │ └── json │ │ ├── json.h │ │ ├── autolink.h │ │ └── forwards.h ├── tinyxml │ ├── changes.txt │ ├── xmltest.cpp │ ├── docs │ │ ├── tab_b.gif │ │ ├── tab_l.gif │ │ ├── tab_r.gif │ │ ├── doxygen.png │ │ ├── classTiXmlBase.png │ │ ├── classTiXmlNode.png │ │ ├── classTiXmlText.png │ │ ├── classTiXmlComment.png │ │ ├── classTiXmlElement.png │ │ ├── classTiXmlPrinter.png │ │ ├── classTiXmlUnknown.png │ │ ├── classTiXmlVisitor.png │ │ ├── classTiXmlAttribute.png │ │ ├── classTiXmlDocument.png │ │ └── classTiXmlDeclaration.png │ ├── utf8test.gif │ ├── utf8test.xml │ └── utf8testverify.xml ├── Scintilla │ ├── SciLexer.dll │ ├── Sci_Position.h │ └── License.txt ├── gtest │ ├── xcode │ │ ├── Config │ │ │ ├── TestTarget.xcconfig │ │ │ ├── FrameworkTarget.xcconfig │ │ │ ├── StaticLibraryTarget.xcconfig │ │ │ ├── DebugProject.xcconfig │ │ │ └── ReleaseProject.xcconfig │ │ ├── Samples │ │ │ └── FrameworkSample │ │ │ │ └── Info.plist │ │ └── Resources │ │ │ └── Info.plist │ └── m4 │ │ └── ltversion.m4 ├── Readme.txt ├── vsprops │ ├── LibDebug.vsprops │ └── LibRelease.vsprops └── zip │ └── ReadMe.txt ├── uitest ├── uitest.h ├── uitest.ico ├── stdafx.cpp ├── TestDrawImage.h ├── LayoutTest.h ├── Resource.h └── ControlTest.h ├── WeChat ├── main.ico ├── WeChat.rc ├── resource.h ├── EmotionUi.cpp ├── HttpUtil.cpp ├── MiscUtil.h ├── Locker.cpp ├── JsonUtil.h ├── UiUtil.h ├── stdafx.cpp ├── Config.h ├── JsonUtil.cpp ├── LoginUi.h ├── UiUtil.cpp ├── Config.cpp ├── EmotionUi.h ├── HttpUtil.h ├── ImageLoader.h └── Locker.h ├── UIEditor ├── UIEditor.rc ├── resource.h ├── UIEditor.ico ├── EditorUtil.h ├── stdafx.cpp ├── Utf8File.h ├── PromptUI.h ├── EditorUtil.cpp ├── Editor.h ├── ScintillaWnd.h └── PromptUI.cpp ├── UIMocker ├── UIMocker.rc ├── resource.h ├── UIMocker.ico ├── Mocker.h ├── stdafx.cpp ├── Mocker.cpp └── stdafx.h ├── ImageEditor ├── small.ico ├── ImageEditor.ico ├── ImageEditor.rc ├── stdafx.cpp └── ImageEditor.h ├── LotteryDraw ├── Bonuses.cpp ├── resource.h ├── LotteryDraw.rc ├── resource │ └── main.ico ├── MiscUtil.h ├── UiUtil.h ├── stdafx.cpp ├── ResultUi.h ├── Bonuses.h ├── UiUtil.cpp └── Employees.h ├── imgviewer ├── ProcUtil.cpp ├── imgviewer.ico ├── FileAssoc.h ├── stdafx.cpp ├── NFileFinder.h ├── ProcUtil.h ├── Resource.h ├── Registry.h └── stdafx.h ├── nui ├── ui │ ├── implement │ │ ├── Gdi │ │ │ ├── SSE.cpp │ │ │ ├── GdiObjMgr.cpp │ │ │ ├── GdiCursor.h │ │ │ ├── AlphaDC.h │ │ │ ├── GdiImageDraw.h │ │ │ ├── ImageDC.h │ │ │ └── GdiTextAttr.h │ │ ├── NWindowBase.cpp │ │ ├── WindowDef.h │ │ ├── UiUtil.h │ │ ├── WindowUtil.h │ │ ├── NShapeDrawImpl.cpp │ │ ├── NHorzLayoutArranger.h │ │ ├── NTileLayoutArranger.h │ │ ├── NVertLayoutArranger.h │ │ ├── NLabelImpl.cpp │ │ ├── NButtonImpl.cpp │ │ ├── WindowMap.h │ │ └── NUiProcImpl.h │ ├── NUiProc.h │ ├── NDraw.h │ ├── NLabel.h │ ├── NButton.h │ ├── NTimerSrv.h │ ├── UiDef.h │ ├── NLayoutArranger.h │ ├── NResourceLoader.h │ ├── NCursor.h │ ├── NRadioBox.h │ ├── NLink.h │ ├── NRenderDef.h │ ├── NCheckBox.h │ ├── NMsgLoop.h │ ├── NShapeDraw.h │ ├── NUiBus.h │ ├── NFont.h │ ├── NRenderClip.h │ ├── NImage.h │ └── NTextAttr.h ├── ReadMe.txt ├── base │ ├── implement │ │ ├── DataTypes.cpp │ │ ├── NCoreImpl.h │ │ ├── DelayedReleaser.h │ │ └── BaseObj.cpp │ ├── noncopyable.h │ ├── NCore.h │ ├── NMacro.h │ ├── NThread.h │ ├── BaseObj.h │ └── NHolder.h ├── stdafx.cpp ├── parser │ ├── implement │ │ ├── LinkParserImpl.h │ │ ├── EditParserImpl.h │ │ ├── ImageParserImpl.h │ │ ├── LabelParserImpl.h │ │ ├── ButtonParserImpl.h │ │ ├── LayoutParserImpl.h │ │ ├── NativeParserImpl.h │ │ ├── CheckBoxParserImpl.h │ │ ├── RadioBoxParserImpl.h │ │ ├── ParserUtil.h │ │ ├── LabelParserImpl.cpp │ │ ├── ButtonParserImpl.cpp │ │ ├── FrameParserImpl.h │ │ ├── LinkParserImpl.cpp │ │ ├── CheckBoxParserImpl.cpp │ │ ├── NativeParserImpl.cpp │ │ ├── RadioBoxParserImpl.cpp │ │ ├── NParserImpl.h │ │ ├── EditParserImpl.cpp │ │ └── ImageParserImpl.cpp │ └── NParser.h ├── data │ ├── NStringBundle.h │ ├── implement │ │ ├── NRealFileSystemImpl.h │ │ ├── NFileMappingImpl.h │ │ ├── NBufferImpl.h │ │ ├── NPackFileSystemImpl.h │ │ ├── NStringBundleImpl.h │ │ ├── NPackageFile.h │ │ ├── NFileSystemImpl.h │ │ ├── NZipImpl.h │ │ ├── NRealFileSystemImpl.cpp │ │ └── NPackFileSystemImpl.cpp │ ├── NFileMapping.h │ ├── NIconv.h │ ├── NFileSystem.h │ ├── NBuffer.h │ ├── NZip.h │ └── NModule.h ├── util │ ├── NFileUtil.h │ ├── NShellUtil.h │ └── NMisc.h ├── dllmain.cpp └── stdafx.h ├── README.md └── vsprops ├── ExeRelease.vsprops ├── ExeDebug.vsprops ├── DLLDebug.vsprops └── DLLRelease.vsprops /uidata/uidata/data/data.txt: -------------------------------------------------------------------------------- 1 | 789 -------------------------------------------------------------------------------- /uidata/uidata/data/txt/123.txt: -------------------------------------------------------------------------------- 1 | 123 -------------------------------------------------------------------------------- /uidata/uidata/data/txt/456.txt: -------------------------------------------------------------------------------- 1 | 456 -------------------------------------------------------------------------------- /autotest/TestData/Zip/Data/1/11.txt: -------------------------------------------------------------------------------- 1 | 11 -------------------------------------------------------------------------------- /autotest/TestData/Zip/Data/2/22.txt: -------------------------------------------------------------------------------- 1 | 22 -------------------------------------------------------------------------------- /thirdparty/jsoncpp/version: -------------------------------------------------------------------------------- 1 | 0.6.0-rc2 -------------------------------------------------------------------------------- /autotest/TestData/FileUtil/1.txt: -------------------------------------------------------------------------------- 1 | 1234567890 -------------------------------------------------------------------------------- /autotest/TestData/Zip/Data/1/11/111.txt: -------------------------------------------------------------------------------- 1 | 111 -------------------------------------------------------------------------------- /autotest/TestData/Zip/Data/2/22/222.txt: -------------------------------------------------------------------------------- 1 | 222 -------------------------------------------------------------------------------- /autotest/TestData/FileMapping/1.txt: -------------------------------------------------------------------------------- 1 | 1234567890 -------------------------------------------------------------------------------- /thirdparty/jsoncpp/devtools/__init__.py: -------------------------------------------------------------------------------- 1 | # module -------------------------------------------------------------------------------- /autotest/TestData/resource/package/data/data.txt: -------------------------------------------------------------------------------- 1 | 789 -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail29.json: -------------------------------------------------------------------------------- 1 | [0e] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail30.json: -------------------------------------------------------------------------------- 1 | [0e+] -------------------------------------------------------------------------------- /autotest/TestData/resource/package/data/txt/123.txt: -------------------------------------------------------------------------------- 1 | 123 -------------------------------------------------------------------------------- /autotest/TestData/resource/package/data/txt/456.txt: -------------------------------------------------------------------------------- 1 | 456 -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_array_01.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_array_02.json: -------------------------------------------------------------------------------- 1 | [1] 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_object_01.json: -------------------------------------------------------------------------------- 1 | {} 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail16.json: -------------------------------------------------------------------------------- 1 | [\naked] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail31.json: -------------------------------------------------------------------------------- 1 | [0e+-1] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_array_01.expected: -------------------------------------------------------------------------------- 1 | .=[] 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_01.json: -------------------------------------------------------------------------------- 1 | 0123456789 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_02.json: -------------------------------------------------------------------------------- 1 | -0123456789 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_05.json: -------------------------------------------------------------------------------- 1 | null 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_06.json: -------------------------------------------------------------------------------- 1 | true 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_07.json: -------------------------------------------------------------------------------- 1 | false 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_05.json: -------------------------------------------------------------------------------- 1 | 1 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_object_01.expected: -------------------------------------------------------------------------------- 1 | .={} 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail2.json: -------------------------------------------------------------------------------- 1 | ["Unclosed array" -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail24.json: -------------------------------------------------------------------------------- 1 | ['single quote'] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail33.json: -------------------------------------------------------------------------------- 1 | ["mismatch"} -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail4.json: -------------------------------------------------------------------------------- 1 | ["extra comma",] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail8.json: -------------------------------------------------------------------------------- 1 | ["Extra close"]] -------------------------------------------------------------------------------- /uitest/uitest.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "resource.h" 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/fail_test_array_01.json: -------------------------------------------------------------------------------- 1 | [ 1 2 3] 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_array_03.json: -------------------------------------------------------------------------------- 1 | [ 1, 2 , 3,4,5] 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_01.expected: -------------------------------------------------------------------------------- 1 | .=123456789 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_02.expected: -------------------------------------------------------------------------------- 1 | .=-123456789 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_04.json: -------------------------------------------------------------------------------- 1 | "abcdef" 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_05.expected: -------------------------------------------------------------------------------- 1 | .=null 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_06.expected: -------------------------------------------------------------------------------- 1 | .=true 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_07.expected: -------------------------------------------------------------------------------- 1 | .=false 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_08.expected: -------------------------------------------------------------------------------- 1 | .=null 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_09.expected: -------------------------------------------------------------------------------- 1 | .=null 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_04.expected: -------------------------------------------------------------------------------- 1 | .=0 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_05.expected: -------------------------------------------------------------------------------- 1 | .=1 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_unicode_01.json: -------------------------------------------------------------------------------- 1 | "\u0061" -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_unicode_02.json: -------------------------------------------------------------------------------- 1 | "\u00A2" -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_unicode_03.json: -------------------------------------------------------------------------------- 1 | "\u20AC" -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail23.json: -------------------------------------------------------------------------------- 1 | ["Bad value", truth] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail27.json: -------------------------------------------------------------------------------- 1 | ["line 2 | break"] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail28.json: -------------------------------------------------------------------------------- 1 | ["line\ 2 | break"] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail9.json: -------------------------------------------------------------------------------- 1 | {"Extra comma": true,} -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_array_02.expected: -------------------------------------------------------------------------------- 1 | .=[] 2 | .[0]=1 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_array_04.json: -------------------------------------------------------------------------------- 1 | [1, "abc" , 12.3, -4] 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_03.json: -------------------------------------------------------------------------------- 1 | 1.2345678 2 | 3 | 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_04.expected: -------------------------------------------------------------------------------- 1 | .="abcdef" 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_01.expected: -------------------------------------------------------------------------------- 1 | .=2147483647 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_02.expected: -------------------------------------------------------------------------------- 1 | .=-2147483648 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_03.expected: -------------------------------------------------------------------------------- 1 | .=4294967295 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_object_02.json: -------------------------------------------------------------------------------- 1 | { "count" : 1234 } 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_object_04.expected: -------------------------------------------------------------------------------- 1 | .={} 2 | .=1234 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_01.expected: -------------------------------------------------------------------------------- 1 | .=8589934592 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_02.expected: -------------------------------------------------------------------------------- 1 | .=-4294967295 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_03.expected: -------------------------------------------------------------------------------- 1 | .=-4294967295 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_04.expected: -------------------------------------------------------------------------------- 1 | .=1.2345678 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_unicode_01.expected: -------------------------------------------------------------------------------- 1 | .="a" 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_unicode_02.expected: -------------------------------------------------------------------------------- 1 | .="¢" 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_unicode_03.expected: -------------------------------------------------------------------------------- 1 | .="€" 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_unicode_04.expected: -------------------------------------------------------------------------------- 1 | .="𝄞" 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_unicode_04.json: -------------------------------------------------------------------------------- 1 | "\uD834\uDD1E" -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail19.json: -------------------------------------------------------------------------------- 1 | {"Missing colon" null} -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail20.json: -------------------------------------------------------------------------------- 1 | {"Double colon":: null} -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail5.json: -------------------------------------------------------------------------------- 1 | ["double extra comma",,] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail6.json: -------------------------------------------------------------------------------- 1 | [ , "<-- missing value"] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail7.json: -------------------------------------------------------------------------------- 1 | ["Comma after the close"], -------------------------------------------------------------------------------- /WeChat/main.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/WeChat/main.ico -------------------------------------------------------------------------------- /thirdparty/jsoncpp/AUTHORS: -------------------------------------------------------------------------------- 1 | Baptiste Lepilleur 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_03.expected: -------------------------------------------------------------------------------- 1 | .=1.2345678 2 | 3 | 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_object_02.expected: -------------------------------------------------------------------------------- 1 | .={} 2 | .count=1234 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_object_04.json: -------------------------------------------------------------------------------- 1 | { 2 | "" : 1234 3 | } 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_05.expected: -------------------------------------------------------------------------------- 1 | .=1234567.8 2 | 3 | 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_06.expected: -------------------------------------------------------------------------------- 1 | .=-1.2345678 2 | 3 | 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_07.expected: -------------------------------------------------------------------------------- 1 | .=-1234567.8 2 | 3 | 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_unicode_05.json: -------------------------------------------------------------------------------- 1 | "Zażółć gęślą jaźń" -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail11.json: -------------------------------------------------------------------------------- 1 | {"Illegal expression": 1 + 2} -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail12.json: -------------------------------------------------------------------------------- 1 | {"Illegal invocation": alert()} -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail14.json: -------------------------------------------------------------------------------- 1 | {"Numbers cannot be hex": 0x14} -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail25.json: -------------------------------------------------------------------------------- 1 | [" tab character in string "] -------------------------------------------------------------------------------- /WeChat/WeChat.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/WeChat/WeChat.rc -------------------------------------------------------------------------------- /WeChat/resource.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/WeChat/resource.h -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail15.json: -------------------------------------------------------------------------------- 1 | ["Illegal backslash escape: \x15"] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail17.json: -------------------------------------------------------------------------------- 1 | ["Illegal backslash escape: \017"] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail21.json: -------------------------------------------------------------------------------- 1 | {"Comma instead of colon", null} -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail22.json: -------------------------------------------------------------------------------- 1 | ["Colon instead of comma": false] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail3.json: -------------------------------------------------------------------------------- 1 | {unquoted_key: "keys must be quoted"} -------------------------------------------------------------------------------- /uitest/uitest.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uitest/uitest.ico -------------------------------------------------------------------------------- /UIEditor/UIEditor.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/UIEditor/UIEditor.rc -------------------------------------------------------------------------------- /UIEditor/resource.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/UIEditor/resource.h -------------------------------------------------------------------------------- /UIMocker/UIMocker.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/UIMocker/UIMocker.rc -------------------------------------------------------------------------------- /UIMocker/resource.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/UIMocker/resource.h -------------------------------------------------------------------------------- /WeChat/EmotionUi.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/WeChat/EmotionUi.cpp -------------------------------------------------------------------------------- /WeChat/HttpUtil.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/WeChat/HttpUtil.cpp -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_08.json: -------------------------------------------------------------------------------- 1 | // C++ style comment 2 | null 3 | 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_04.json: -------------------------------------------------------------------------------- 1 | // Min unsigned integer 2 | 0 3 | 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_06_64bits.expected: -------------------------------------------------------------------------------- 1 | .=9223372036854775808 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_06_64bits.json: -------------------------------------------------------------------------------- 1 | 9223372036854775808 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_07_64bits.expected: -------------------------------------------------------------------------------- 1 | .=-9223372036854775808 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_07_64bits.json: -------------------------------------------------------------------------------- 1 | -9223372036854775808 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_08_64bits.expected: -------------------------------------------------------------------------------- 1 | .=18446744073709551615 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_08_64bits.json: -------------------------------------------------------------------------------- 1 | 18446744073709551615 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_04.json: -------------------------------------------------------------------------------- 1 | // 1.2345678 2 | 12345678e-7 3 | 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_05.json: -------------------------------------------------------------------------------- 1 | // 1234567.8 2 | 0.12345678e7 3 | 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_06.json: -------------------------------------------------------------------------------- 1 | // -1.2345678 2 | -12345678e-7 3 | 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_07.json: -------------------------------------------------------------------------------- 1 | // -1234567.8 2 | -0.12345678e7 3 | 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_03.expected: -------------------------------------------------------------------------------- 1 | .="http://jsoncpp.sourceforge.net/" -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail26.json: -------------------------------------------------------------------------------- 1 | ["tab\ character\ in\ string\ "] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail32.json: -------------------------------------------------------------------------------- 1 | {"Comma instead if closing brace": true, -------------------------------------------------------------------------------- /ImageEditor/small.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/ImageEditor/small.ico -------------------------------------------------------------------------------- /LotteryDraw/Bonuses.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/LotteryDraw/Bonuses.cpp -------------------------------------------------------------------------------- /LotteryDraw/resource.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/LotteryDraw/resource.h -------------------------------------------------------------------------------- /UIEditor/UIEditor.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/UIEditor/UIEditor.ico -------------------------------------------------------------------------------- /UIMocker/UIMocker.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/UIMocker/UIMocker.ico -------------------------------------------------------------------------------- /imgviewer/ProcUtil.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/imgviewer/ProcUtil.cpp -------------------------------------------------------------------------------- /imgviewer/imgviewer.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/imgviewer/imgviewer.ico -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_basic_09.json: -------------------------------------------------------------------------------- 1 | /* C style comment 2 | */ 3 | null 4 | 5 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_01.json: -------------------------------------------------------------------------------- 1 | // Max signed integer 2 | 2147483647 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_02.json: -------------------------------------------------------------------------------- 1 | // Min signed integer 2 | -2147483648 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_integer_03.json: -------------------------------------------------------------------------------- 1 | // Max unsigned integer 2 | 4294967295 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_03.json: -------------------------------------------------------------------------------- 1 | "http:\/\/jsoncpp.sourceforge.net\/" 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_unicode_05.expected: -------------------------------------------------------------------------------- 1 | .="Zażółć gęślą jaźń" 2 | 3 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail13.json: -------------------------------------------------------------------------------- 1 | {"Numbers cannot have leading zeroes": 013} -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_preserve_comment_01.expected: -------------------------------------------------------------------------------- 1 | .={} 2 | .first=1 3 | .second=2 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail18.json: -------------------------------------------------------------------------------- 1 | [[[[[[[[[[[[[[[[[[[["Too deep"]]]]]]]]]]]]]]]]]]]] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/pass2.json: -------------------------------------------------------------------------------- 1 | [[[[[[[[[[[[[[[[[[["Not too deep"]]]]]]]]]]]]]]]]]]] -------------------------------------------------------------------------------- /ImageEditor/ImageEditor.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/ImageEditor/ImageEditor.ico -------------------------------------------------------------------------------- /ImageEditor/ImageEditor.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/ImageEditor/ImageEditor.rc -------------------------------------------------------------------------------- /LotteryDraw/LotteryDraw.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/LotteryDraw/LotteryDraw.rc -------------------------------------------------------------------------------- /autotest/TestFrameParser.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/autotest/TestFrameParser.h -------------------------------------------------------------------------------- /autotest/TestStringBundle.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/autotest/TestStringBundle.h -------------------------------------------------------------------------------- /nui/ui/implement/Gdi/SSE.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/nui/ui/implement/Gdi/SSE.cpp -------------------------------------------------------------------------------- /LotteryDraw/resource/main.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/LotteryDraw/resource/main.ico -------------------------------------------------------------------------------- /autotest/TestData/Zip/Data.zip: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/autotest/TestData/Zip/Data.zip -------------------------------------------------------------------------------- /thirdparty/jsoncpp/doc/readme.txt: -------------------------------------------------------------------------------- 1 | The documentation is generated using doxygen (http://www.doxygen.org). 2 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail1.json: -------------------------------------------------------------------------------- 1 | "A JSON payload should be an object or array, not a string." -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/fail10.json: -------------------------------------------------------------------------------- 1 | {"Extra value after close": true} "misplaced quoted value" -------------------------------------------------------------------------------- /thirdparty/tinyxml/changes.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/changes.txt -------------------------------------------------------------------------------- /thirdparty/tinyxml/xmltest.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/xmltest.cpp -------------------------------------------------------------------------------- /nui/ui/implement/NWindowBase.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/nui/ui/implement/NWindowBase.cpp -------------------------------------------------------------------------------- /thirdparty/Scintilla/SciLexer.dll: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/Scintilla/SciLexer.dll -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_array_04.expected: -------------------------------------------------------------------------------- 1 | .=[] 2 | .[0]=1 3 | .[1]="abc" 4 | .[2]=12.3 5 | .[3]=-4 6 | -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/tab_b.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/tab_b.gif -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/tab_l.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/tab_l.gif -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/tab_r.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/tab_r.gif -------------------------------------------------------------------------------- /thirdparty/tinyxml/utf8test.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/utf8test.gif -------------------------------------------------------------------------------- /uidata/WeChat/skin/main/msg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/main/msg.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/main/send.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/main/send.png -------------------------------------------------------------------------------- /uidata/uidata/skin/images/0.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/images/0.gif -------------------------------------------------------------------------------- /uidata/uidata/skin/images/3.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/images/3.gif -------------------------------------------------------------------------------- /autotest/TestData/images/button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/autotest/TestData/images/button.png -------------------------------------------------------------------------------- /nui/ui/implement/Gdi/GdiObjMgr.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/nui/ui/implement/Gdi/GdiObjMgr.cpp -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_array_03.expected: -------------------------------------------------------------------------------- 1 | .=[] 2 | .[0]=1 3 | .[1]=2 4 | .[2]=3 5 | .[3]=4 6 | .[4]=5 7 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_object_03.expected: -------------------------------------------------------------------------------- 1 | .={} 2 | .attribute="random" 3 | .count=1234 4 | .name="test" 5 | -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/doxygen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/doxygen.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/main/cancel.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/main/cancel.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/main/config.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/main/config.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/main/contact.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/main/contact.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/main/fileTab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/main/fileTab.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/main/search.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/main/search.png -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_01.json: -------------------------------------------------------------------------------- 1 | // 2^33 => out of integer range, switch to double 2 | 8589934592 3 | 4 | -------------------------------------------------------------------------------- /uidata/UIEditor/skin/common/button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/UIEditor/skin/common/button.png -------------------------------------------------------------------------------- /uidata/UIEditor/skin/common/header.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/UIEditor/skin/common/header.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/common/button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/common/button.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/common/header.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/common/header.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/common/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/common/loading.gif -------------------------------------------------------------------------------- /uidata/WeChat/skin/main/contactBkg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/main/contactBkg.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/main/emotionTab.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/main/emotionTab.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/main/emotions.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/main/emotions.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/mockup/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/mockup/avatar.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/button.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/checkBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/checkBox.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/header.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/header.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/radioBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/radioBox.png -------------------------------------------------------------------------------- /UIEditor/EditorUtil.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | namespace EditorUtil 4 | { 5 | bool Execute(LPCTSTR commandLine); 6 | }; 7 | -------------------------------------------------------------------------------- /nui/ui/implement/WindowDef.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | 5 | #define SKIN_WINDOW_NAME _T("nui_window_class") 6 | 7 | -------------------------------------------------------------------------------- /uidata/uidata/skin/images/514540469.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/images/514540469.png -------------------------------------------------------------------------------- /uidata/uidata/skin/images/nineimage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/images/nineimage.png -------------------------------------------------------------------------------- /WeChat/MiscUtil.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | namespace MiscUtil 5 | { 6 | NString GetMd5(unsigned char* data, int length); 7 | } -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_object_03.json: -------------------------------------------------------------------------------- 1 | { 2 | "count" : 1234, 3 | "name" : "test", 4 | "attribute" : "random" 5 | } 6 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_02.json: -------------------------------------------------------------------------------- 1 | // -2^32 => out of signed integer range, switch to double 2 | -4294967295 3 | 4 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_real_03.json: -------------------------------------------------------------------------------- 1 | // -2^32 => out of signed integer range, switch to double 2 | -4294967295 3 | 4 | -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/classTiXmlBase.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/classTiXmlBase.png -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/classTiXmlNode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/classTiXmlNode.png -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/classTiXmlText.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/classTiXmlText.png -------------------------------------------------------------------------------- /uidata/ImageEditor/skin/common/button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/ImageEditor/skin/common/button.png -------------------------------------------------------------------------------- /uidata/ImageEditor/skin/common/checkBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/ImageEditor/skin/common/checkBox.png -------------------------------------------------------------------------------- /uidata/ImageEditor/skin/common/radioBox.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/ImageEditor/skin/common/radioBox.png -------------------------------------------------------------------------------- /uidata/UIEditor/skin/common/headerArrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/UIEditor/skin/common/headerArrow.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/common/headerArrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/common/headerArrow.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/common/horzScrollBkg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/common/horzScrollBkg.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/common/vertScrollBkg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/common/vertScrollBkg.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/headerArrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/headerArrow.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/horzScrollBkg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/horzScrollBkg.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/vertScrollBkg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/vertScrollBkg.png -------------------------------------------------------------------------------- /LotteryDraw/MiscUtil.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | namespace MiscUtil 5 | { 6 | NString GetMd5(unsigned char* data, int length); 7 | } -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/classTiXmlComment.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/classTiXmlComment.png -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/classTiXmlElement.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/classTiXmlElement.png -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/classTiXmlPrinter.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/classTiXmlPrinter.png -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/classTiXmlUnknown.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/classTiXmlUnknown.png -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/classTiXmlVisitor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/classTiXmlVisitor.png -------------------------------------------------------------------------------- /uidata/ImageEditor/skin/images/nineimage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/ImageEditor/skin/images/nineimage.png -------------------------------------------------------------------------------- /uidata/UIEditor/skin/common/horzScrollBkg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/UIEditor/skin/common/horzScrollBkg.png -------------------------------------------------------------------------------- /uidata/UIEditor/skin/common/vertScrollBkg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/UIEditor/skin/common/vertScrollBkg.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/common/horzScrollBlock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/common/horzScrollBlock.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/common/sys_max_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/common/sys_max_button.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/common/sys_min_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/common/sys_min_button.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/common/vertScrollBlock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/common/vertScrollBlock.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/horzScrollBlock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/horzScrollBlock.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/sys_max_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/sys_max_button.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/sys_min_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/sys_min_button.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/vertScrollBlock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/vertScrollBlock.png -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/classTiXmlAttribute.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/classTiXmlAttribute.png -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/classTiXmlDocument.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/classTiXmlDocument.png -------------------------------------------------------------------------------- /uidata/UIEditor/skin/common/horzScrollBlock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/UIEditor/skin/common/horzScrollBlock.png -------------------------------------------------------------------------------- /uidata/UIEditor/skin/common/horzScrollSlider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/UIEditor/skin/common/horzScrollSlider.png -------------------------------------------------------------------------------- /uidata/UIEditor/skin/common/sys_close_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/UIEditor/skin/common/sys_close_button.png -------------------------------------------------------------------------------- /uidata/UIEditor/skin/common/sys_max_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/UIEditor/skin/common/sys_max_button.png -------------------------------------------------------------------------------- /uidata/UIEditor/skin/common/sys_min_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/UIEditor/skin/common/sys_min_button.png -------------------------------------------------------------------------------- /uidata/UIEditor/skin/common/vertScrollBlock.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/UIEditor/skin/common/vertScrollBlock.png -------------------------------------------------------------------------------- /uidata/UIEditor/skin/common/vertScrollSlider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/UIEditor/skin/common/vertScrollSlider.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/common/horzScrollSlider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/common/horzScrollSlider.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/common/sys_close_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/common/sys_close_button.png -------------------------------------------------------------------------------- /uidata/WeChat/skin/common/vertScrollSlider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/WeChat/skin/common/vertScrollSlider.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/horzScrollSlider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/horzScrollSlider.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/sys_close_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/sys_close_button.png -------------------------------------------------------------------------------- /uidata/uidata/skin/common/vertScrollSlider.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/uidata/skin/common/vertScrollSlider.png -------------------------------------------------------------------------------- /thirdparty/tinyxml/docs/classTiXmlDeclaration.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/thirdparty/tinyxml/docs/classTiXmlDeclaration.png -------------------------------------------------------------------------------- /uidata/ImageEditor/skin/common/sys_max_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/ImageEditor/skin/common/sys_max_button.png -------------------------------------------------------------------------------- /uidata/ImageEditor/skin/common/sys_min_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/ImageEditor/skin/common/sys_min_button.png -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_01.expected: -------------------------------------------------------------------------------- 1 | .="!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~" -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_string_01.json: -------------------------------------------------------------------------------- 1 | "!\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~" 2 | -------------------------------------------------------------------------------- /uidata/ImageEditor/skin/common/sys_close_button.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hufuman/nui/HEAD/uidata/ImageEditor/skin/common/sys_close_button.png -------------------------------------------------------------------------------- /WeChat/Locker.cpp: -------------------------------------------------------------------------------- 1 | #include "StdAfx.h" 2 | #include "Locker.h" 3 | 4 | CLocker::CLocker(void) 5 | { 6 | } 7 | 8 | CLocker::~CLocker(void) 9 | { 10 | } 11 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | nui 2 | === 3 | 4 | directui library 5 | 6 | Demo 7 | ==== 8 | 9 | [Image Viewer](https://github.com/hufuman/nui/blob/master/DemoBin/imgviewer.exe?raw=true) 10 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_comment_01.expected: -------------------------------------------------------------------------------- 1 | .={} 2 | .test=[] 3 | .test[0]={} 4 | .test[0].a="aaa" 5 | .test[1]={} 6 | .test[1].b="bbb" 7 | .test[2]={} 8 | .test[2].c="ccc" 9 | -------------------------------------------------------------------------------- /WeChat/JsonUtil.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | namespace JsonUtil 5 | { 6 | NString GetValue(const Json::Value& data, LPCSTR name); 7 | int GetIntValue(const Json::Value& data, LPCSTR name); 8 | } -------------------------------------------------------------------------------- /UIMocker/Mocker.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | class CMocker 4 | { 5 | public: 6 | CMocker(void); 7 | ~CMocker(void); 8 | 9 | bool mock(const NString& styleName, NString& error); 10 | }; 11 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/pass3.json: -------------------------------------------------------------------------------- 1 | { 2 | "JSON Test Pattern pass3": { 3 | "The outermost value": "must be an object or array.", 4 | "In this test": "It is an object." 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/src/lib_json/sconscript: -------------------------------------------------------------------------------- 1 | Import( 'env buildLibrary' ) 2 | 3 | buildLibrary( env, Split( """ 4 | json_reader.cpp 5 | json_value.cpp 6 | json_writer.cpp 7 | """ ), 8 | 'json' ) 9 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_array_06.json: -------------------------------------------------------------------------------- 1 | [ "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa", 2 | "bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb", 3 | "ccccccccccccccccccccccc", 4 | "dddddddddddddddddddddddddddddddddddddddddddddddddddd" ] -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_comment_01.json: -------------------------------------------------------------------------------- 1 | { 2 | "test": 3 | [ 4 | { "a" : "aaa" }, // Comment for a 5 | { "b" : "bbb" }, // Comment for b 6 | { "c" : "ccc" } // Comment for c 7 | ] 8 | } 9 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/jsonchecker/readme.txt: -------------------------------------------------------------------------------- 1 | Test suite from http://json.org/JSON_checker/. 2 | 3 | If the JSON_checker is working correctly, it must accept all of the pass*.json files and reject all of the fail*.json files. 4 | -------------------------------------------------------------------------------- /uidata/UIEditor/string/2052/Main.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_array_06.expected: -------------------------------------------------------------------------------- 1 | .=[] 2 | .[0]="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa" 3 | .[1]="bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb" 4 | .[2]="ccccccccccccccccccccccc" 5 | .[3]="dddddddddddddddddddddddddddddddddddddddddddddddddddd" 6 | -------------------------------------------------------------------------------- /WeChat/UiUtil.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | 5 | namespace UiUtil 6 | { 7 | NFrame* SetFrameText(NFrame* parentFrame, LPCTSTR frameId, LPCTSTR text); 8 | NImage* SetFrameImage(NFrame* parentFrame, LPCTSTR frameId, LPCTSTR imagePath); 9 | }; 10 | -------------------------------------------------------------------------------- /nui/ui/implement/UiUtil.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "../NFrameBase.h" 4 | 5 | 6 | namespace UiUtil 7 | { 8 | void SyncNativeWindowByVisible(nui::Ui::NFrameBase* frame); 9 | void SyncNativeWindowByEnable(nui::Ui::NFrameBase* frame); 10 | } -------------------------------------------------------------------------------- /LotteryDraw/UiUtil.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | 5 | namespace UiUtil 6 | { 7 | NFrame* SetFrameText(NFrame* parentFrame, LPCTSTR frameId, LPCTSTR text); 8 | NImage* SetFrameImage(NFrame* parentFrame, LPCTSTR frameId, LPCTSTR imagePath); 9 | }; 10 | -------------------------------------------------------------------------------- /nui/ReadMe.txt: -------------------------------------------------------------------------------- 1 | issues: 2 | 1. dont release resource after usage, but put it into a delayed queue 3 | 1. when zoomed in, nineStretch should zoomed in too 4 | 1. assert when not in ui thread 5 | 1. when add childs of layout, scrollbar will become longer, and shorter and longer -------------------------------------------------------------------------------- /uidata/uidata/data/xml/data.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /nui/base/implement/DataTypes.cpp: -------------------------------------------------------------------------------- 1 | #include "stdafx.h" 2 | #include "MemRecorder.h" 3 | namespace nui 4 | { 5 | namespace Base 6 | { 7 | const NSize NSize::g_EmptySize; 8 | const NPoint NPoint::g_EmptyPoint; 9 | const NRect NRect::g_EmptyRect; 10 | } 11 | } -------------------------------------------------------------------------------- /autotest/TestData/resource/package/data/xml/data.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /thirdparty/gtest/xcode/Config/TestTarget.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // TestTarget.xcconfig 3 | // 4 | // These are Test target settings for the gtest framework and examples. It 5 | // is set in the "Based On:" dropdown in the "Target" info dialog. 6 | 7 | PRODUCT_NAME = $(TARGET_NAME) 8 | HEADER_SEARCH_PATHS = ../include 9 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/src/jsontestrunner/sconscript: -------------------------------------------------------------------------------- 1 | Import( 'env_testing buildJSONTests' ) 2 | 3 | buildJSONTests( env_testing, Split( """ 4 | main.cpp 5 | """ ), 6 | 'jsontestrunner' ) 7 | 8 | # For 'check' to work, 'libs' must be built first. 9 | env_testing.Depends('jsontestrunner', '#libs') 10 | -------------------------------------------------------------------------------- /nui/stdafx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // NUI.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | // TODO: reference any additional headers you need in STDAFX.H 8 | // and not in this file 9 | -------------------------------------------------------------------------------- /uidata/UIEditor/string/2052/Common.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /uidata/uidata/string/2052/Common.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /uidata/ImageEditor/string/2052/Common.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /UIEditor/stdafx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // UIEditor.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | // TODO: reference any additional headers you need in STDAFX.H 8 | // and not in this file 9 | -------------------------------------------------------------------------------- /UIMocker/stdafx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // UIMocker.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | // TODO: reference any additional headers you need in STDAFX.H 8 | // and not in this file 9 | -------------------------------------------------------------------------------- /WeChat/stdafx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // WeChat.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | // TODO: reference any additional headers you need in STDAFX.H 8 | // and not in this file 9 | -------------------------------------------------------------------------------- /autotest/stdafx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // AutoTest.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | // TODO: reference any additional headers you need in STDAFX.H 8 | // and not in this file 9 | -------------------------------------------------------------------------------- /imgviewer/FileAssoc.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | class FileAssoc 4 | { 5 | public: 6 | FileAssoc(void); 7 | ~FileAssoc(void); 8 | 9 | bool Start(); 10 | 11 | // .exe 12 | bool Assoc(LPCTSTR fileExt); 13 | 14 | bool Roll(BOOL needAssoc); 15 | 16 | private: 17 | NArrayT fileExts_; 18 | }; 19 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/cleantests.py: -------------------------------------------------------------------------------- 1 | # removes all files created during testing 2 | import glob 3 | import os 4 | 5 | paths = [] 6 | for pattern in [ '*.actual', '*.actual-rewrite', '*.rewrite', '*.process-output' ]: 7 | paths += glob.glob( 'data/' + pattern ) 8 | 9 | for path in paths: 10 | os.unlink( path ) 11 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_preserve_comment_01.json: -------------------------------------------------------------------------------- 1 | /* A comment 2 | at the beginning of the file. 3 | */ 4 | { 5 | "first" : 1, // comment after 'first' on the same line 6 | 7 | /* Comment before 'second' 8 | */ 9 | "second" : 2 10 | } 11 | 12 | /* A comment at 13 | the end of the file. 14 | */ 15 | -------------------------------------------------------------------------------- /uidata/uidata/data/xml/window.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 7 | -------------------------------------------------------------------------------- /uitest/stdafx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // uitest.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | // TODO: reference any additional headers you need in STDAFX.H 8 | // and not in this file 9 | -------------------------------------------------------------------------------- /imgviewer/stdafx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // imgviewer.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | // TODO: reference any additional headers you need in STDAFX.H 8 | // and not in this file 9 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/src/test_lib_json/sconscript: -------------------------------------------------------------------------------- 1 | Import( 'env_testing buildUnitTests' ) 2 | 3 | buildUnitTests( env_testing, Split( """ 4 | main.cpp 5 | jsontest.cpp 6 | """ ), 7 | 'test_lib_json' ) 8 | 9 | # For 'check' to work, 'libs' must be built first. 10 | env_testing.Depends('test_lib_json', '#libs') 11 | -------------------------------------------------------------------------------- /ImageEditor/stdafx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // ImageEditor.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | // TODO: reference any additional headers you need in STDAFX.H 8 | // and not in this file 9 | -------------------------------------------------------------------------------- /LotteryDraw/stdafx.cpp: -------------------------------------------------------------------------------- 1 | // stdafx.cpp : source file that includes just the standard includes 2 | // LotteryDraw.pch will be the pre-compiled header 3 | // stdafx.obj will contain the pre-compiled type information 4 | 5 | #include "stdafx.h" 6 | 7 | // TODO: reference any additional headers you need in STDAFX.H 8 | // and not in this file 9 | -------------------------------------------------------------------------------- /nui/ui/NUiProc.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | namespace nui 5 | { 6 | namespace Ui 7 | { 8 | typedef FastDelegate1 NUiProcHandler; 9 | 10 | void NUI_API PostUiProc(NUiProcHandler handler, void* data); 11 | LRESULT NUI_API SendUiProc(NUiProcHandler handler, void* data); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /uidata/WeChat/string/2052/Common.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /uidata/UIEditor/package.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /autotest/TestData/resource/package/data/xml/window.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 7 | -------------------------------------------------------------------------------- /WeChat/Config.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | class Config 4 | { 5 | Config(); 6 | Config(const Config&); 7 | Config& operator = (const Config&); 8 | public: 9 | ~Config(void); 10 | 11 | static Config& Get(); 12 | 13 | public: 14 | NString GetAppDataPath(LPCTSTR pathName); 15 | 16 | private: 17 | NString dataPath_; 18 | }; 19 | -------------------------------------------------------------------------------- /nui/ui/implement/WindowUtil.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | 5 | namespace nui 6 | { 7 | namespace Ui 8 | { 9 | namespace Util 10 | { 11 | bool RegisterWindowClass(LPCTSTR szClassName, WNDPROC wndProc); 12 | bool EnsureWindowClass(LPCTSTR szClassName, WNDPROC wndProc); 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /UIEditor/Utf8File.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | class CUtf8File 4 | { 5 | public: 6 | CUtf8File(void); 7 | ~CUtf8File(void); 8 | 9 | bool LoadFile(LPCTSTR filePath); 10 | 11 | const char* GetBuffer() const; 12 | int GetLength() const; 13 | 14 | private: 15 | void Clear(); 16 | 17 | private: 18 | char* buffer_; 19 | int length_; 20 | }; 21 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_complex_01.json: -------------------------------------------------------------------------------- 1 | { 2 | "count" : 1234, 3 | "name" : { "aka" : "T.E.S.T.", "id" : 123987 }, 4 | "attribute" : [ 5 | "random", 6 | "short", 7 | "bold", 8 | 12, 9 | { "height" : 7, "width" : 64 } 10 | ], 11 | "test": { "1" : 12 | { "2" : 13 | { "3" : { "coord" : [ 1,2] } 14 | } 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /uitest/TestDrawImage.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | 5 | class CTestDrawImage 6 | { 7 | public: 8 | CTestDrawImage(); 9 | ~CTestDrawImage(); 10 | 11 | bool DrawCallback(NBaseObj* baseObj, NEventData* eventData); 12 | 13 | public: 14 | void Test(); 15 | 16 | private: 17 | NAutoPtr m_pShape; 18 | NAutoPtr m_pImage; 19 | }; -------------------------------------------------------------------------------- /WeChat/JsonUtil.cpp: -------------------------------------------------------------------------------- 1 | #include "StdAfx.h" 2 | #include "JsonUtil.h" 3 | 4 | 5 | namespace JsonUtil 6 | { 7 | NString GetValue(const Json::Value& data, LPCSTR name) 8 | { 9 | return utf82t(data[name].asString().c_str()); 10 | } 11 | 12 | int GetIntValue(const Json::Value& data, LPCSTR name) 13 | { 14 | return data[name].asInt(); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/generate_expected.py: -------------------------------------------------------------------------------- 1 | import glob 2 | import os.path 3 | for path in glob.glob( '*.json' ): 4 | text = file(path,'rt').read() 5 | target = os.path.splitext(path)[0] + '.expected' 6 | if os.path.exists( target ): 7 | print 'skipping:', target 8 | else: 9 | print 'creating:', target 10 | file(target,'wt').write(text) 11 | 12 | -------------------------------------------------------------------------------- /uidata/ImageEditor/package.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /nui/base/noncopyable.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | namespace nui 5 | { 6 | namespace Base 7 | { 8 | class NUI_CLASS Noncopyable 9 | { 10 | public: 11 | Noncopyable(){} 12 | virtual ~Noncopyable(){} 13 | private: 14 | Noncopyable(const Noncopyable&){} 15 | Noncopyable& operator =(const Noncopyable&); 16 | }; 17 | } 18 | } -------------------------------------------------------------------------------- /thirdparty/jsoncpp/test/data/test_array_05.json: -------------------------------------------------------------------------------- 1 | [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99] -------------------------------------------------------------------------------- /uidata/WeChat/package.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /nui/parser/implement/LinkParserImpl.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "LabelParserImpl.h" 4 | 5 | 6 | class LinkParserImpl : public LabelParserImpl 7 | { 8 | DECLARE_REFLECTION(TEXT("nui"), TEXT("linkparser")) 9 | public: 10 | LinkParserImpl(); 11 | 12 | virtual bool IsCorrectObj(nui::Base::NBaseObj* targetObj); 13 | virtual void FillAttr(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode); 14 | }; 15 | -------------------------------------------------------------------------------- /nui/parser/implement/EditParserImpl.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "NativeParserImpl.h" 4 | 5 | 6 | class EditParserImpl : public NativeParserImpl 7 | { 8 | DECLARE_REFLECTION(TEXT("nui"), TEXT("editparser")) 9 | public: 10 | EditParserImpl(); 11 | 12 | virtual bool IsCorrectObj(nui::Base::NBaseObj* targetObj); 13 | virtual void FillAttr(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode); 14 | }; 15 | -------------------------------------------------------------------------------- /nui/parser/implement/ImageParserImpl.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "FrameParserImpl.h" 4 | 5 | 6 | class ImageParserImpl : public FrameParserImpl 7 | { 8 | DECLARE_REFLECTION(TEXT("nui"), TEXT("imageparser")) 9 | public: 10 | ImageParserImpl(); 11 | 12 | virtual bool IsCorrectObj(nui::Base::NBaseObj* targetObj); 13 | virtual void FillAttr(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode); 14 | }; 15 | -------------------------------------------------------------------------------- /nui/parser/implement/LabelParserImpl.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "FrameParserImpl.h" 4 | 5 | 6 | class LabelParserImpl : public FrameParserImpl 7 | { 8 | DECLARE_REFLECTION(TEXT("nui"), TEXT("labelparser")) 9 | public: 10 | LabelParserImpl(); 11 | 12 | virtual bool IsCorrectObj(nui::Base::NBaseObj* targetObj); 13 | virtual void FillAttr(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode); 14 | }; 15 | -------------------------------------------------------------------------------- /nui/parser/implement/ButtonParserImpl.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "FrameParserImpl.h" 4 | 5 | 6 | class ButtonParserImpl : public FrameParserImpl 7 | { 8 | DECLARE_REFLECTION(TEXT("nui"), TEXT("buttonparser")) 9 | public: 10 | ButtonParserImpl(); 11 | 12 | virtual bool IsCorrectObj(nui::Base::NBaseObj* targetObj); 13 | virtual void FillAttr(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode); 14 | }; 15 | -------------------------------------------------------------------------------- /nui/parser/implement/LayoutParserImpl.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "FrameParserImpl.h" 4 | 5 | 6 | class LayoutParserImpl : public FrameParserImpl 7 | { 8 | DECLARE_REFLECTION(TEXT("nui"), TEXT("layoutparser")) 9 | public: 10 | LayoutParserImpl(); 11 | 12 | virtual bool IsCorrectObj(nui::Base::NBaseObj* targetObj); 13 | virtual void FillAttr(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode); 14 | }; 15 | -------------------------------------------------------------------------------- /nui/parser/implement/NativeParserImpl.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "FrameParserImpl.h" 4 | 5 | 6 | class NativeParserImpl : public FrameParserImpl 7 | { 8 | DECLARE_REFLECTION(TEXT("nui"), TEXT("nativeparser")) 9 | public: 10 | NativeParserImpl(); 11 | 12 | virtual bool IsCorrectObj(nui::Base::NBaseObj* targetObj); 13 | virtual void FillAttr(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode); 14 | }; 15 | -------------------------------------------------------------------------------- /nui/ui/NDraw.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | 5 | namespace nui 6 | { 7 | namespace Ui 8 | { 9 | class NUI_INTF NRender; 10 | class NUI_INTF NDraw : public nui::Base::NBaseObj 11 | { 12 | public: 13 | virtual Base::NSize GetPreferSize() const = 0; 14 | virtual NDraw* Draw(NRender* render, int horzIndex, int vertIndex, const Base::NRect& rect) = 0; 15 | }; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /uidata/uidata/package.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /LotteryDraw/ResultUi.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | class ResultUi 4 | { 5 | public: 6 | ResultUi(void); 7 | ~ResultUi(void); 8 | 9 | void Show(NWindow* window, const NString& result); 10 | 11 | private: 12 | bool OnWindowCreated(Base::NBaseObj* source, NEventData* eventData); 13 | bool OnBtnExport(Base::NBaseObj* source, NEventData* eventData); 14 | 15 | private: 16 | NInstPtr window_; 17 | NString result_; 18 | }; 19 | -------------------------------------------------------------------------------- /nui/parser/implement/CheckBoxParserImpl.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "ButtonParserImpl.h" 4 | 5 | 6 | class CheckBoxParserImpl : public ButtonParserImpl 7 | { 8 | DECLARE_REFLECTION(TEXT("nui"), TEXT("checkboxparser")) 9 | public: 10 | CheckBoxParserImpl(); 11 | 12 | virtual bool IsCorrectObj(nui::Base::NBaseObj* targetObj); 13 | virtual void FillAttr(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode); 14 | }; 15 | -------------------------------------------------------------------------------- /nui/parser/implement/RadioBoxParserImpl.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "CheckBoxParserImpl.h" 4 | 5 | 6 | class RadioBoxParserImpl : public CheckBoxParserImpl 7 | { 8 | DECLARE_REFLECTION(TEXT("nui"), TEXT("radioboxparser")) 9 | public: 10 | RadioBoxParserImpl(); 11 | 12 | virtual bool IsCorrectObj(nui::Base::NBaseObj* targetObj); 13 | virtual void PreParse(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode); 14 | }; 15 | -------------------------------------------------------------------------------- /nui/ui/implement/NShapeDrawImpl.cpp: -------------------------------------------------------------------------------- 1 | #include "stdafx.h" 2 | #include "../NShapeDraw.h" 3 | 4 | 5 | namespace nui 6 | { 7 | namespace Ui 8 | { 9 | NUI_API Base::NAutoPtr CreateRectDraw(ArgbColor fillColor) 10 | { 11 | Base::NInstPtr shape(MemToolParam); 12 | shape->SetStyle(NShapeDraw::Rect)->SetFillColor(fillColor); 13 | return shape; 14 | } 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /autotest/TestData/resource/package/style/AboutUI.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 8 | 10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /nui/data/implement/NFileMappingImpl.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | #include "../NFileMapping.h" 5 | 6 | 7 | class NFileMappingImpl : public nui::Data::NFileMapping 8 | { 9 | public: 10 | NFileMappingImpl(void); 11 | virtual ~NFileMappingImpl(void); 12 | 13 | virtual bool OpenForRead(LPCTSTR filePath); 14 | virtual void Close(); 15 | virtual LPBYTE GetData(); 16 | virtual DWORD GetSize(); 17 | 18 | protected: 19 | HANDLE file_; 20 | HANDLE fileMapping_; 21 | LPBYTE data_; 22 | DWORD size_; 23 | }; 24 | -------------------------------------------------------------------------------- /nui/data/NFileMapping.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | #include "../base/BaseObj.h" 5 | 6 | namespace nui 7 | { 8 | namespace Data 9 | { 10 | class NUI_INTF NFileMapping : public Base::NBaseObj 11 | { 12 | DECLARE_REFLECTION(TEXT("nui"), TEXT("filemapping")) 13 | public: 14 | virtual bool OpenForRead(LPCTSTR filePath) = 0; 15 | virtual void Close() = 0; 16 | virtual LPBYTE GetData() = 0; 17 | virtual DWORD GetSize() = 0; 18 | }; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /uidata/UIEditor/style/PromptUI.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 6 | 7 | 8 | 11 | 14 | 15 | 18 | 19 | 20 | 23 | 24 | -------------------------------------------------------------------------------- /autotest/targetver.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | // The following macros define the minimum required platform. The minimum required platform 4 | // is the earliest version of Windows, Internet Explorer etc. that has the necessary features to run 5 | // your application. The macros work by enabling all features available on platform versions up to and 6 | // including the version specified. 7 | 8 | // Modify the following defines if you have to target a platform prior to the ones specified below. 9 | // Refer to MSDN for the latest info on corresponding values for different platforms. 10 | #ifndef _WIN32_WINNT // Specifies that the minimum required platform is Windows Vista. 11 | #define _WIN32_WINNT 0x0600 // Change this to the appropriate value to target other versions of Windows. 12 | #endif 13 | 14 | -------------------------------------------------------------------------------- /thirdparty/gtest/m4/ltversion.m4: -------------------------------------------------------------------------------- 1 | # ltversion.m4 -- version numbers -*- Autoconf -*- 2 | # 3 | # Copyright (C) 2004 Free Software Foundation, Inc. 4 | # Written by Scott James Remnant, 2004 5 | # 6 | # This file is free software; the Free Software Foundation gives 7 | # unlimited permission to copy and/or distribute it, with or without 8 | # modifications, as long as this notice is preserved. 9 | 10 | # @configure_input@ 11 | 12 | # serial 3337 ltversion.m4 13 | # This file is part of GNU Libtool 14 | 15 | m4_define([LT_PACKAGE_VERSION], [2.4.2]) 16 | m4_define([LT_PACKAGE_REVISION], [1.3337]) 17 | 18 | AC_DEFUN([LTVERSION_VERSION], 19 | [macro_version='2.4.2' 20 | macro_revision='1.3337' 21 | _LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) 22 | _LT_DECL(, macro_revision, 0) 23 | ]) 24 | -------------------------------------------------------------------------------- /uitest/Resource.h: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Visual C++ generated include file. 3 | // Used by uitest.rc 4 | // 5 | 6 | #define IDS_APP_TITLE 103 7 | 8 | #define IDR_MAINFRAME 128 9 | #define IDD_UITEST_DIALOG 102 10 | #define IDD_ABOUTBOX 103 11 | #define IDM_ABOUT 104 12 | #define IDM_EXIT 105 13 | #define IDI_UITEST 107 14 | #define IDC_UITEST 109 15 | #define IDC_MYICON 2 16 | #ifndef IDC_STATIC 17 | #define IDC_STATIC -1 18 | #endif 19 | // Next default values for new objects 20 | // 21 | #ifdef APSTUDIO_INVOKED 22 | #ifndef APSTUDIO_READONLY_SYMBOLS 23 | 24 | #define _APS_NO_MFC 130 25 | #define _APS_NEXT_RESOURCE_VALUE 129 26 | #define _APS_NEXT_COMMAND_VALUE 32771 27 | #define _APS_NEXT_CONTROL_VALUE 1000 28 | #define _APS_NEXT_SYMED_VALUE 110 29 | #endif 30 | #endif 31 | -------------------------------------------------------------------------------- /WeChat/Config.cpp: -------------------------------------------------------------------------------- 1 | #include "StdAfx.h" 2 | #include "Config.h" 3 | 4 | Config::Config(void) 5 | { 6 | } 7 | 8 | Config::~Config(void) 9 | { 10 | } 11 | 12 | Config& Config::Get() 13 | { 14 | static Config config; 15 | return config; 16 | } 17 | 18 | NString Config::GetAppDataPath(LPCTSTR pathName) 19 | { 20 | if(!dataPath_.IsEmpty()) 21 | return dataPath_; 22 | 23 | TCHAR dataPath[1024]; 24 | ::SHGetSpecialFolderPath(NULL, dataPath, CSIDL_APPDATA, FALSE); 25 | 26 | dataPath_ = File::CombinePath(dataPath, _T("WeChatBot")); 27 | dataPath_ = File::CombinePath(dataPath_, pathName); 28 | if(!File::MakeSureFolderExists(dataPath_)) 29 | { 30 | ::GetTempPath(_countof(dataPath), dataPath); 31 | dataPath_ = dataPath; 32 | } 33 | 34 | return dataPath_; 35 | } 36 | -------------------------------------------------------------------------------- /imgviewer/Resource.h: -------------------------------------------------------------------------------- 1 | //{{NO_DEPENDENCIES}} 2 | // Microsoft Visual C++ generated include file. 3 | // Used by imgviewer.rc 4 | // 5 | 6 | #define IDS_APP_TITLE 103 7 | 8 | #define IDR_MAINFRAME 128 9 | #define IDD_IMGVIEWER_DIALOG 102 10 | #define IDD_ABOUTBOX 103 11 | #define IDM_ABOUT 104 12 | #define IDM_EXIT 105 13 | #define IDI_IMGVIEWER 107 14 | #define IDC_IMGVIEWER 109 15 | #define IDC_MYICON 2 16 | #ifndef IDC_STATIC 17 | #define IDC_STATIC -1 18 | #endif 19 | // Next default values for new objects 20 | // 21 | #ifdef APSTUDIO_INVOKED 22 | #ifndef APSTUDIO_READONLY_SYMBOLS 23 | 24 | #define _APS_NO_MFC 130 25 | #define _APS_NEXT_RESOURCE_VALUE 129 26 | #define _APS_NEXT_COMMAND_VALUE 32771 27 | #define _APS_NEXT_CONTROL_VALUE 1000 28 | #define _APS_NEXT_SYMED_VALUE 110 29 | #endif 30 | #endif 31 | -------------------------------------------------------------------------------- /nui/ui/NRadioBox.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | #include "NCheckBox.h" 5 | 6 | namespace nui 7 | { 8 | namespace Ui 9 | { 10 | class NUI_CLASS NRadioBox : public NCheckBox 11 | { 12 | DECLARE_REFLECTION(TEXT("nui"), TEXT("radiobox")) 13 | public: 14 | NRadioBox(); 15 | ~NRadioBox(); 16 | 17 | virtual void SetGroup(const Base::NString& groupName); 18 | 19 | public: 20 | virtual bool SetCheck(bool checked); 21 | 22 | protected: 23 | virtual void OnCreate(); 24 | virtual void OnClicked(const nui::Base::NPoint& point); 25 | 26 | bool SyncRadioGroups(NFrameBase* frameBase, LPARAM lParam); 27 | 28 | private: 29 | Base::NString groupName_; 30 | }; 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /nui/stdafx.h: -------------------------------------------------------------------------------- 1 | // stdafx.h : include file for standard system include files, 2 | // or project specific include files that are used frequently, but 3 | // are changed infrequently 4 | // 5 | 6 | #pragma once 7 | 8 | #include "targetver.h" 9 | 10 | #define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers 11 | 12 | // Windows Header Files: 13 | #include 14 | #include 15 | 16 | #include 17 | #include 18 | 19 | 20 | #pragma warning(disable: 4996) 21 | #include "nui.h" 22 | 23 | 24 | #pragma comment(lib, "zip.lib") 25 | #pragma comment(lib, "tinyxml.lib") 26 | 27 | #pragma comment(lib, "comctl32.lib") 28 | #pragma comment(lib, "GdiPlus.lib") 29 | #pragma comment(lib, "Msimg32.lib") 30 | #pragma comment(lib, "comsupp.lib") 31 | #pragma comment(lib, "Urlmon.lib") 32 | -------------------------------------------------------------------------------- /thirdparty/Scintilla/Sci_Position.h: -------------------------------------------------------------------------------- 1 | // Scintilla source code edit control 2 | /** @file Sci_Position.h 3 | ** Define the Sci_Position type used in Scintilla's external interfaces. 4 | ** These need to be available to clients written in C so are not in a C++ namespace. 5 | **/ 6 | // Copyright 2015 by Neil Hodgson 7 | // The License.txt file describes the conditions under which this software may be distributed. 8 | 9 | #ifndef SCI_POSITION_H 10 | #define SCI_POSITION_H 11 | 12 | // Basic signed type used throughout interface 13 | typedef int Sci_Position; 14 | 15 | // Unsigned variant used for ILexer::Lex and ILexer::Fold 16 | typedef unsigned int Sci_PositionU; 17 | 18 | // For Sci_CharacterRange which is defined as long to be compatible with Win32 CHARRANGE 19 | typedef long Sci_PositionCR; 20 | 21 | #endif 22 | -------------------------------------------------------------------------------- /uidata/WeChat/string/2052/LoginUi.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /UIEditor/Editor.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "ScintillaWnd.h" 4 | 5 | class CEditor 6 | { 7 | public: 8 | CEditor(void); 9 | ~CEditor(void); 10 | 11 | bool create(); 12 | 13 | private: 14 | bool createWindow(); 15 | bool initEditor(); 16 | void listenEvents(); 17 | bool openFile(const NString& filePath); 18 | bool previewUi(const NString& styleName, NString& error); 19 | 20 | bool onWindowMsg(NWindowBase*, UINT message, WPARAM wParam, LPARAM lParam, LRESULT& lResult); 21 | 22 | // events 23 | bool onWindowCreated(NBaseObj*, NEventData*); 24 | bool onBtnBrowseClicked(NBaseObj*, NEventData*); 25 | bool onBtnSaveAndPreviewClicked(NBaseObj*, NEventData*); 26 | 27 | 28 | private: 29 | NAutoPtr window_; 30 | CScintillaWnd scintillaWnd_; 31 | 32 | NString styleFilePath_; 33 | }; 34 | -------------------------------------------------------------------------------- /nui/parser/implement/FrameParserImpl.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | #include "BaseParser.h" 4 | #include "../../ui/NFrame.h" 5 | 6 | 7 | class FrameParserImpl : public NBaseParser 8 | { 9 | DECLARE_REFLECTION(TEXT("nui"), TEXT("frameparser")) 10 | public: 11 | FrameParserImpl(); 12 | 13 | virtual bool IsCorrectObj(nui::Base::NBaseObj* targetObj); 14 | virtual void Create(nui::Base::NBaseObj* parentObj, nui::Base::NBaseObj* targetObj); 15 | virtual void FillAttr(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode); 16 | virtual void PreParse(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode); 17 | virtual void PostParse(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode); 18 | 19 | private: 20 | void FillTextAttr(nui::Ui::NFrame* targetFrame, nui::Data::NDataReader* styleNode); 21 | }; 22 | -------------------------------------------------------------------------------- /nui/data/implement/NPackageFile.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | class NPackageFile : protected nui::Base::Noncopyable 5 | { 6 | typedef std::map PathMap; 7 | public: 8 | NPackageFile(); 9 | ~NPackageFile(); 10 | 11 | public: 12 | void Init(LPCTSTR filePath, bool useRealFS); 13 | bool LoadConfig(nui::Base::NInstPtr fileBuffer); 14 | nui::Base::NString GetRealPath(LPCTSTR xncPath); 15 | 16 | private: 17 | nui::Base::NString GetXNCPrefix(const nui::Base::NString& path); 18 | bool LoadConfigForNode(nui::Base::NAutoPtr reader, LPCTSTR xmlPath, LPCTSTR nodeName, LPCTSTR keyName, PathMap& pathMap); 19 | 20 | protected: 21 | bool useRealFS_; 22 | 23 | PathMap mapPaths_; 24 | PathMap mapStrings_; 25 | nui::Base::NString rootPath_; 26 | }; 27 | -------------------------------------------------------------------------------- /nui/ui/NLink.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | #include "NLabel.h" 5 | 6 | namespace nui 7 | { 8 | namespace Ui 9 | { 10 | BEGIN_USE_UNEXPORT_TEMPLATE() 11 | 12 | class NUI_CLASS NLink : public NLabel 13 | { 14 | DECLARE_REFLECTION(TEXT("nui"), TEXT("link")) 15 | public: 16 | NLink(); 17 | ~NLink(); 18 | 19 | virtual NCursor* GetCursor() const; 20 | virtual void SetUrl(const Base::NString& url); 21 | 22 | protected: 23 | virtual void DrawContent(NRender* render, const Base::NRect& rect) const; 24 | 25 | virtual void OnCreate(); 26 | virtual void OnClicked(const nui::Base::NPoint& point); 27 | 28 | private: 29 | bool isUrl_; 30 | }; 31 | END_USE_UNEXPORT_TEMPLATE() 32 | } 33 | } 34 | -------------------------------------------------------------------------------- /imgviewer/Registry.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | class CRegistry 4 | { 5 | CRegistry(const CRegistry&); 6 | CRegistry& operator = (const CRegistry&); 7 | public: 8 | CRegistry(); 9 | ~CRegistry(); 10 | 11 | BOOL OpenForRead(HKEY hKeyRoot, LPCTSTR szSubPath); 12 | BOOL OpenForWrite(HKEY hKeyRoot, LPCTSTR szSubPath); 13 | 14 | void Close(); 15 | 16 | public: 17 | BOOL GetValue(LPCTSTR szValueName, NString& strValue) const; 18 | BOOL SetValue(LPCTSTR szValueName, const NString& strValue) const; 19 | 20 | static BOOL GetRegValue(HKEY hKeyRoot, LPCTSTR szSubPath, LPCTSTR szValueName, NString& strValue); 21 | static BOOL SetRegValue(HKEY hKeyRoot, LPCTSTR szSubPath, LPCTSTR szValueName, const NString& strValue); 22 | static BOOL DeleteKey(HKEY hKeyRoot, LPCTSTR szSubPath); 23 | 24 | private: 25 | HKEY m_hKey; 26 | }; 27 | -------------------------------------------------------------------------------- /UIEditor/ScintillaWnd.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | class CScintillaWnd 5 | { 6 | public: 7 | CScintillaWnd(void); 8 | ~CScintillaWnd(void); 9 | 10 | public: 11 | bool Create(HWND hWndParent, const RECT& rcWnd, DWORD dwStyle = WS_VISIBLE | WS_CHILD); 12 | bool OnNotify(WPARAM wParam, LPARAM lParam, LRESULT& lResult); 13 | HWND GetHandle() const; 14 | 15 | void SetKeywords(const char* keywords); 16 | 17 | bool Open(const NString& filePath); 18 | bool Save(const NString& filePath); 19 | void Clear(); 20 | 21 | private: 22 | bool LoadModule(); 23 | bool InitEditor(); 24 | 25 | LRESULT SendEditorMsg(UINT msg, WPARAM wParam = 0, LPARAM lParam = 0); 26 | void SetAStyle(int style, COLORREF fore, COLORREF back = RGB(255, 255, 255), int size = -1, const char *face = NULL); 27 | 28 | private: 29 | HWND m_hWnd; 30 | }; 31 | -------------------------------------------------------------------------------- /nui/ui/implement/Gdi/GdiImageDraw.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | #include "../BaseImageDraw.h" 5 | 6 | 7 | namespace nui 8 | { 9 | namespace Ui 10 | { 11 | class GdiImageDraw : public BaseImageDraw 12 | { 13 | public: 14 | GdiImageDraw(NResourceLoader* loader); 15 | ~GdiImageDraw(); 16 | 17 | virtual int NextDelayValue(int index); 18 | 19 | virtual void Destroy(); 20 | 21 | void SetBitmaps(const Base::NString& imagePath, const Data::NArrayT& vctBitmaps, const Data::NArrayT& vctDelayCount); 22 | HBITMAP GetHBitmap(int index) const; 23 | 24 | private: 25 | Base::NString imagePath_; 26 | const Data::NArrayT* vctBitmaps_; 27 | const Data::NArrayT* vctDelayCount_; 28 | }; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /autotest/TestData/resource/package/style/TestUI.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 8 | 20 | 21 | 22 | -------------------------------------------------------------------------------- /nui/parser/implement/NParserImpl.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | #include "BaseParser.h" 5 | #include "../NParser.h" 6 | #include "../../base/NAutoPtr.h" 7 | 8 | class NParserImpl : public nui::Parser::NParser 9 | { 10 | public: 11 | virtual nui::Base::NAutoPtr Parse(nui::Base::NBaseObj* parentObj, LPCTSTR stylePath); 12 | virtual bool ApplyStyle(nui::Base::NBaseObj* targetObj, LPCTSTR stylePath); 13 | virtual nui::Base::NAutoPtr FindStyleNode(LPCTSTR stylePath); 14 | 15 | private: 16 | bool GetStyleParam(LPCTSTR stylePath, nui::Base::NString& filePath, nui::Base::NString& styleName); 17 | nui::Base::NAutoPtr LoadPackFile(LPCTSTR filePath); 18 | 19 | void OnReleaseTimer(); 20 | 21 | private: 22 | struct StyleData 23 | { 24 | nui::Base::NAutoPtr styleReader; 25 | DWORD lastAccessTime; 26 | }; 27 | typedef std::map StyleMap; 28 | StyleMap styleMap_; 29 | nui::Base::NHolder releaseHolder_; 30 | }; 31 | -------------------------------------------------------------------------------- /vsprops/DLLDebug.vsprops: -------------------------------------------------------------------------------- 1 | 2 | 9 | 20 | 26 | 27 | -------------------------------------------------------------------------------- /vsprops/DLLRelease.vsprops: -------------------------------------------------------------------------------- 1 | 2 | 9 | 20 | 26 | 27 | -------------------------------------------------------------------------------- /nui/ui/implement/Gdi/ImageDC.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | 5 | 6 | class ImageDC 7 | { 8 | ImageDC(const ImageDC&); 9 | ImageDC& operator = (const ImageDC&); 10 | public: 11 | ImageDC(HDC hDc, HBITMAP bitmap) 12 | { 13 | bool nullDc = (hDc == NULL); 14 | if(nullDc) 15 | hDc = ::GetDC(NULL); 16 | memDC_ = ::CreateCompatibleDC(hDc); 17 | oldBitmap_ = ::SelectObject(memDC_, bitmap); 18 | ::SetStretchBltMode(memDC_, COLORONCOLOR); 19 | if(nullDc) 20 | ::ReleaseDC(NULL, hDc); 21 | NAssertError(oldBitmap_ != NULL, _T("Error in ImageDC::ImageDC")); 22 | } 23 | ~ImageDC() 24 | { 25 | if(memDC_ != NULL) 26 | { 27 | if(oldBitmap_ != NULL) 28 | ::SelectObject(memDC_, oldBitmap_); 29 | oldBitmap_ = NULL; 30 | ::DeleteDC(memDC_); 31 | memDC_ = NULL; 32 | } 33 | } 34 | 35 | operator HDC() 36 | { 37 | return memDC_; 38 | } 39 | 40 | private: 41 | HDC memDC_; 42 | HGDIOBJ oldBitmap_; 43 | }; 44 | -------------------------------------------------------------------------------- /nui/parser/implement/EditParserImpl.cpp: -------------------------------------------------------------------------------- 1 | #include "stdafx.h" 2 | #include "EditParserImpl.h" 3 | 4 | #include "ParserUtil.h" 5 | #include "../../ui/NEdit.h" 6 | 7 | IMPLEMENT_REFLECTION(EditParserImpl); 8 | 9 | using namespace nui; 10 | using namespace Ui; 11 | using namespace Base; 12 | using namespace Data; 13 | 14 | EditParserImpl::EditParserImpl() 15 | { 16 | creator_ = &NBaseParser::BaseCreator; 17 | } 18 | 19 | bool EditParserImpl::IsCorrectObj(nui::Base::NBaseObj* targetObj) 20 | { 21 | return targetObj != NULL && dynamic_cast(targetObj) != NULL; 22 | } 23 | 24 | void EditParserImpl::FillAttr(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode) 25 | { 26 | NativeParserImpl::FillAttr(targetObj, styleNode); 27 | 28 | NEdit* targetEdit = dynamic_cast(targetObj); 29 | 30 | bool tmpBool; 31 | NString tmpString; 32 | 33 | if(styleNode->ReadValue(_T("readOnly"), tmpBool)) 34 | targetEdit->SetReadOnly(tmpBool); 35 | 36 | if(styleNode->ReadValue(_T("hintText"), tmpString)) 37 | targetEdit->SetHintText(tmpString); 38 | } 39 | -------------------------------------------------------------------------------- /WeChat/ImageLoader.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | #include "Locker.h" 5 | #include 6 | 7 | class CImageLoader 8 | { 9 | CImageLoader(); 10 | CImageLoader(const CImageLoader&); 11 | CImageLoader& operator = (const CImageLoader&); 12 | public: 13 | ~CImageLoader(void); 14 | 15 | static CImageLoader& Get(); 16 | 17 | public: 18 | NString LoadImage(NImage* image, LPCTSTR imgUrl, bool needRemoveAfterLoad); 19 | void Stop(); 20 | 21 | private: 22 | static UINT WINAPI LoadImageThreadProc(void*); 23 | 24 | NString GetImageName(LPCTSTR imgUrl); 25 | LRESULT RenderImageProc(void*); 26 | 27 | private: 28 | 29 | struct ImageLoadData 30 | { 31 | NAutoPtr image; 32 | NString imgUrl; 33 | NString imgName; 34 | NString imgPath; 35 | bool needRemoveAfterLoad; 36 | int retryCount; 37 | }; 38 | 39 | typedef std::queue ImageLoadDataQueue; 40 | ImageLoadDataQueue imageLoadDataQueue_; 41 | 42 | bool stopImageLoading_; 43 | HANDLE imageLoadingThread_; 44 | 45 | CSectionLocker locker_; 46 | }; 47 | -------------------------------------------------------------------------------- /nui/parser/implement/ImageParserImpl.cpp: -------------------------------------------------------------------------------- 1 | #include "stdafx.h" 2 | #include "ImageParserImpl.h" 3 | 4 | #include "ParserUtil.h" 5 | #include "../../ui/NImage.h" 6 | 7 | IMPLEMENT_REFLECTION(ImageParserImpl); 8 | 9 | using namespace nui; 10 | using namespace Ui; 11 | using namespace Base; 12 | using namespace Data; 13 | 14 | ImageParserImpl::ImageParserImpl() 15 | { 16 | creator_ = &NBaseParser::BaseCreator; 17 | } 18 | 19 | bool ImageParserImpl::IsCorrectObj(nui::Base::NBaseObj* targetObj) 20 | { 21 | return targetObj != NULL && dynamic_cast(targetObj) != NULL; 22 | } 23 | 24 | void ImageParserImpl::FillAttr(nui::Base::NBaseObj* targetObj, nui::Data::NDataReader* styleNode) 25 | { 26 | FrameParserImpl::FillAttr(targetObj, styleNode); 27 | 28 | NString tmpString; 29 | NSize tmpSize; 30 | NImage* targetImage = dynamic_cast(targetObj); 31 | 32 | if(styleNode->ReadValue(_T("imagePath"), tmpString)) 33 | targetImage->LoadImage(tmpString); 34 | 35 | if(styleNode->ReadValue(_T("imageIndex"), tmpSize)) 36 | targetImage->SetIndex(tmpSize.Width, tmpSize.Height); 37 | } 38 | -------------------------------------------------------------------------------- /nui/data/implement/NZipImpl.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | #include "../NZip.h" 5 | #include "../NFileMapping.h" 6 | #include "../NBuffer.h" 7 | #include 8 | #include 9 | 10 | 11 | class NZipImpl : public nui::Data::NZip 12 | { 13 | public: 14 | NZipImpl(void); 15 | virtual ~NZipImpl(void); 16 | 17 | // Zip 18 | virtual bool ZipFolder(LPCTSTR srcFolder, LPCTSTR outputFile); 19 | 20 | // UnZip 21 | virtual bool LoadFile(LPCTSTR zipFilePath); 22 | virtual bool GetFileContent(LPCTSTR relativePath, nui::Data::NBuffer* buffer); 23 | virtual bool IsFileExists(LPCTSTR relativePath); 24 | virtual void Close(); 25 | 26 | protected: 27 | ZIPENTRYW* GetZipEntry(LPCTSTR relativePath); 28 | // rootPath & srcFolder should be ended by '\\' 29 | bool ZipFolderHelper(HZIP zipFile, const nui::Base::NString& srcFolder, const nui::Base::NString& rootPath); 30 | 31 | private: 32 | nui::Base::NInstPtr zipBuffer_; 33 | HZIP zipFile_; 34 | 35 | typedef std::map CacheDataMap; 36 | CacheDataMap m_mapCacheData; 37 | }; 38 | -------------------------------------------------------------------------------- /UIEditor/PromptUI.cpp: -------------------------------------------------------------------------------- 1 | #include "StdAfx.h" 2 | #include "PromptUI.h" 3 | 4 | CPromptUI::CPromptUI(void) 5 | { 6 | window_ = NULL; 7 | rootFrame_ = NULL; 8 | needPreview_ = false; 9 | } 10 | 11 | CPromptUI::~CPromptUI(void) 12 | { 13 | } 14 | 15 | bool CPromptUI::DoModal(HWND hWnd, NString& styleName) 16 | { 17 | NInstPtr window(MemToolParam); 18 | 19 | window_ = window; 20 | window->WindowCreatedEvent.AddHandler(this, &CPromptUI::onWindowCreated); 21 | window->DoModalWithStyle(hWnd, _T("@PromptUI:MainUI")); 22 | styleName = styleName_; 23 | return needPreview_; 24 | } 25 | 26 | bool CPromptUI::onWindowCreated(NBaseObj*, NEventData*) 27 | { 28 | rootFrame_ = window_->GetRootFrame(); 29 | rootFrame_->GetChildById(_T("btnPreview"))->ClickEvent += MakeDelegate(this, &CPromptUI::onBtnPreview); 30 | 31 | return true; 32 | } 33 | 34 | bool CPromptUI::onBtnPreview(NBaseObj*, NEventData*) 35 | { 36 | NEdit* editStyle = rootFrame_->GetChildById(_T("editStyle")); 37 | styleName_ = editStyle->GetText(); 38 | window_->Destroy(); 39 | needPreview_ = true; 40 | return true; 41 | } -------------------------------------------------------------------------------- /nui/data/implement/NRealFileSystemImpl.cpp: -------------------------------------------------------------------------------- 1 | #include "stdafx.h" 2 | #include "NRealFileSystemImpl.h" 3 | 4 | #include "../../util/NFileUtil.h" 5 | 6 | 7 | NRealFileSystemImpl::NRealFileSystemImpl() 8 | { 9 | } 10 | 11 | NRealFileSystemImpl::~NRealFileSystemImpl() 12 | { 13 | } 14 | 15 | bool NRealFileSystemImpl::Init(LPCTSTR packFilePath) 16 | { 17 | UNREFERENCED_PARAMETER(packFilePath); 18 | return true; 19 | } 20 | 21 | void NRealFileSystemImpl::Destroy() 22 | { 23 | ; 24 | } 25 | 26 | bool NRealFileSystemImpl::IsFileExists(LPCTSTR filePath) 27 | { 28 | return nui::Util::File::IsFileExists(filePath); 29 | } 30 | 31 | bool NRealFileSystemImpl::LoadFile(LPCTSTR filePath, nui::Data::NBuffer* pBuffer) 32 | { 33 | nui::Base::NInstPtr mapping(MemToolParam); 34 | if(mapping == NULL) 35 | return false; 36 | if(mapping->OpenForRead(filePath)) 37 | { 38 | if(pBuffer->SetSize(mapping->GetSize())) 39 | { 40 | memcpy(pBuffer->GetBuffer(), mapping->GetData(), mapping->GetSize()); 41 | return true; 42 | } 43 | } 44 | return false; 45 | } 46 | -------------------------------------------------------------------------------- /thirdparty/gtest/xcode/Config/DebugProject.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // DebugProject.xcconfig 3 | // 4 | // These are Debug Configuration project settings for the gtest framework and 5 | // examples. It is set in the "Based On:" dropdown in the "Project" info 6 | // dialog. 7 | // This file is based on the Xcode Configuration files in: 8 | // http://code.google.com/p/google-toolbox-for-mac/ 9 | // 10 | 11 | #include "General.xcconfig" 12 | 13 | // No optimization 14 | GCC_OPTIMIZATION_LEVEL = 0 15 | 16 | // Deployment postprocessing is what triggers Xcode to strip, turn it off 17 | DEPLOYMENT_POSTPROCESSING = NO 18 | 19 | // Dead code stripping off 20 | DEAD_CODE_STRIPPING = NO 21 | 22 | // Debug symbols should be on obviously 23 | GCC_GENERATE_DEBUGGING_SYMBOLS = YES 24 | 25 | // Define the DEBUG macro in all debug builds 26 | OTHER_CFLAGS = $(OTHER_CFLAGS) -DDEBUG=1 27 | 28 | // These are turned off to avoid STL incompatibilities with client code 29 | // // Turns on special C++ STL checks to "encourage" good STL use 30 | // GCC_PREPROCESSOR_DEFINITIONS = $(GCC_PREPROCESSOR_DEFINITIONS) _GLIBCXX_DEBUG_PEDANTIC _GLIBCXX_DEBUG _GLIBCPP_CONCEPT_CHECKS 31 | -------------------------------------------------------------------------------- /nui/ui/NImage.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | #include "NFrame.h" 5 | 6 | namespace nui 7 | { 8 | namespace Ui 9 | { 10 | BEGIN_USE_UNEXPORT_TEMPLATE() 11 | 12 | class NUI_CLASS NImage : public NFrame 13 | { 14 | DECLARE_REFLECTION(TEXT("nui"), TEXT("image")) 15 | public: 16 | NImage(); 17 | ~NImage(); 18 | 19 | bool LoadImage(LPCTSTR filePath); 20 | 21 | void Start(); 22 | void Stop(); 23 | 24 | void SetIndex(int horzIndex, int vertIndex); 25 | 26 | virtual Base::NSize GetAutoSize() const; 27 | 28 | protected: 29 | virtual void OnCreate(); 30 | virtual void DrawContent(NRender* render, const Base::NRect& rect) const; 31 | 32 | void Reset(); 33 | void MovieTimerProc(); 34 | 35 | protected: 36 | Base::NHolder movieTimer_; 37 | int horzIndex_; 38 | int vertIndex_; 39 | int currentDelayValue_; 40 | Base::NAutoPtr imageDraw_; 41 | }; 42 | END_USE_UNEXPORT_TEMPLATE() 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /thirdparty/gtest/xcode/Config/ReleaseProject.xcconfig: -------------------------------------------------------------------------------- 1 | // 2 | // ReleaseProject.xcconfig 3 | // 4 | // These are Release Configuration project settings for the gtest framework 5 | // and examples. It is set in the "Based On:" dropdown in the "Project" info 6 | // dialog. 7 | // This file is based on the Xcode Configuration files in: 8 | // http://code.google.com/p/google-toolbox-for-mac/ 9 | // 10 | 11 | #include "General.xcconfig" 12 | 13 | // subconfig/Release.xcconfig 14 | 15 | // Optimize for space and size (Apple recommendation) 16 | GCC_OPTIMIZATION_LEVEL = s 17 | 18 | // Deploment postprocessing is what triggers Xcode to strip 19 | DEPLOYMENT_POSTPROCESSING = YES 20 | 21 | // No symbols 22 | GCC_GENERATE_DEBUGGING_SYMBOLS = NO 23 | 24 | // Dead code strip does not affect ObjC code but can help for C 25 | DEAD_CODE_STRIPPING = YES 26 | 27 | // NDEBUG is used by things like assert.h, so define it for general compat. 28 | // ASSERT going away in release tends to create unused vars. 29 | OTHER_CFLAGS = $(OTHER_CFLAGS) -DNDEBUG=1 -Wno-unused-variable 30 | 31 | // When we strip we want to strip all symbols in release, but save externals. 32 | STRIP_STYLE = all 33 | -------------------------------------------------------------------------------- /thirdparty/gtest/xcode/Resources/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | com.google.${PRODUCT_NAME} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundlePackageType 16 | FMWK 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | GTEST_VERSIONINFO_LONG 21 | CFBundleShortVersionString 22 | GTEST_VERSIONINFO_SHORT 23 | CFBundleGetInfoString 24 | ${PRODUCT_NAME} GTEST_VERSIONINFO_LONG, ${GTEST_VERSIONINFO_ABOUT} 25 | NSHumanReadableCopyright 26 | ${GTEST_VERSIONINFO_ABOUT} 27 | CSResourcesFileMapped 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /autotest/TestDelayedRelease.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | int g_DelayedReleaseIndex = 0; 5 | 6 | class DelayedReleaseObj : public NBaseObj 7 | { 8 | public: 9 | DelayedReleaseObj() 10 | { 11 | curIndex_ = ++ g_DelayedReleaseIndex; 12 | } 13 | ~DelayedReleaseObj() 14 | { 15 | if(curIndex_ < 5) 16 | { 17 | DelayedReleaseObj* obj = NNew(DelayedReleaseObj); 18 | obj->AddRef(); 19 | 20 | NDelayedRelease(obj); 21 | } 22 | else 23 | { 24 | ::PostQuitMessage(0); 25 | } 26 | } 27 | private: 28 | int curIndex_; 29 | }; 30 | 31 | class TestDelayedRelease : public testing::Test 32 | { 33 | public: 34 | virtual void SetUp() 35 | { 36 | } 37 | 38 | virtual void TearDown() 39 | { 40 | } 41 | }; 42 | 43 | TEST_F(TestDelayedRelease, Basic) 44 | { 45 | DWORD tickCount = ::GetTickCount(); 46 | DelayedReleaseObj* obj = NNew(DelayedReleaseObj); 47 | obj->AddRef(); 48 | 49 | NDelayedRelease(obj); 50 | 51 | NMsgLoop looop; 52 | looop.Loop(); 53 | 54 | tickCount = ::GetTickCount() - tickCount; 55 | EXPECT_GT(tickCount, static_cast(4999)); 56 | } 57 | -------------------------------------------------------------------------------- /thirdparty/jsoncpp/include/json/forwards.h: -------------------------------------------------------------------------------- 1 | // Copyright 2007-2010 Baptiste Lepilleur 2 | // Distributed under MIT license, or public domain if desired and 3 | // recognized in your jurisdiction. 4 | // See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE 5 | 6 | #ifndef JSON_FORWARDS_H_INCLUDED 7 | # define JSON_FORWARDS_H_INCLUDED 8 | 9 | #if !defined(JSON_IS_AMALGAMATION) 10 | # include "config.h" 11 | #endif // if !defined(JSON_IS_AMALGAMATION) 12 | 13 | namespace Json { 14 | 15 | // writer.h 16 | class FastWriter; 17 | class StyledWriter; 18 | 19 | // reader.h 20 | class Reader; 21 | 22 | // features.h 23 | class Features; 24 | 25 | // value.h 26 | typedef unsigned int ArrayIndex; 27 | class StaticString; 28 | class Path; 29 | class PathArgument; 30 | class Value; 31 | class ValueIteratorBase; 32 | class ValueIterator; 33 | class ValueConstIterator; 34 | #ifdef JSON_VALUE_USE_INTERNAL_MAP 35 | class ValueMapAllocator; 36 | class ValueInternalLink; 37 | class ValueInternalArray; 38 | class ValueInternalMap; 39 | #endif // #ifdef JSON_VALUE_USE_INTERNAL_MAP 40 | 41 | } // namespace Json 42 | 43 | 44 | #endif // JSON_FORWARDS_H_INCLUDED 45 | -------------------------------------------------------------------------------- /WeChat/Locker.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | class ILocker 5 | { 6 | public: 7 | virtual ~ILocker(){} 8 | 9 | virtual void Lock() = 0; 10 | virtual void UnLock() = 0; 11 | }; 12 | 13 | class CSectionLocker : public ILocker 14 | { 15 | CSectionLocker(const CSectionLocker&); 16 | CSectionLocker& operator = (const CSectionLocker&); 17 | public: 18 | CSectionLocker() 19 | { 20 | ::InitializeCriticalSection(§ion_); 21 | } 22 | 23 | ~CSectionLocker() 24 | { 25 | ::DeleteCriticalSection(§ion_); 26 | } 27 | 28 | virtual void Lock() 29 | { 30 | ::EnterCriticalSection(§ion_); 31 | } 32 | 33 | virtual void UnLock() 34 | { 35 | ::LeaveCriticalSection(§ion_); 36 | } 37 | 38 | private: 39 | CRITICAL_SECTION section_; 40 | }; 41 | 42 | class CAutoLocker 43 | { 44 | CAutoLocker(); 45 | CAutoLocker(const CAutoLocker&); 46 | CAutoLocker& operator = (const CAutoLocker&); 47 | public: 48 | CAutoLocker(ILocker* locker) 49 | { 50 | locker_ = locker; 51 | locker_->Lock(); 52 | } 53 | 54 | ~CAutoLocker() 55 | { 56 | locker_->UnLock(); 57 | } 58 | 59 | private: 60 | ILocker* locker_; 61 | }; 62 | -------------------------------------------------------------------------------- /nui/ui/NTextAttr.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | 5 | #include "../base/BaseObj.h" 6 | #include "../base/DataTypes.h" 7 | 8 | namespace nui 9 | { 10 | namespace Ui 11 | { 12 | class NUI_INTF NTextAttr : public Base::NBaseObj 13 | { 14 | public: 15 | enum TextAlign 16 | { 17 | TextAlignLeft = 0x00, 18 | TextAlignTop = 0x00, 19 | 20 | TextAlignRight = 0x01, 21 | TextAlignBottom = 0x02, 22 | 23 | TextAlignHCenter = 0x04, 24 | TextAlignVCenter = 0x08, 25 | TextAlignCenter = 0x04 | 0x08, 26 | }; 27 | 28 | public: 29 | virtual NTextAttr* SetColor(ArgbColor color) = 0; 30 | virtual ArgbColor GetColor() const = 0; 31 | virtual NTextAttr* SetBgColor(ArgbColor color) = 0; 32 | virtual ArgbColor GetBgColor() const = 0; 33 | virtual NTextAttr* SetSingleLine(bool singleLine) = 0; 34 | virtual bool IsSingleLine() const = 0; 35 | virtual NTextAttr* SetAlignFlags(UINT alignFlags) = 0; 36 | virtual UINT GetAlignFlags() const = 0; 37 | }; 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /nui/ui/implement/Gdi/GdiTextAttr.h: -------------------------------------------------------------------------------- 1 | #pragma once 2 | 3 | 4 | #include "../../NTextAttr.h" 5 | 6 | 7 | namespace nui 8 | { 9 | namespace Ui 10 | { 11 | #define GDI_TEXTATTR_DEFAULT_DRAWFLAGS (DT_SINGLELINE | DT_END_ELLIPSIS | DT_CENTER | DT_VCENTER) 12 | 13 | class GdiTextAttr : public NTextAttr 14 | { 15 | public: 16 | GdiTextAttr(); 17 | ~GdiTextAttr(); 18 | 19 | public: 20 | virtual NTextAttr* SetColor(ArgbColor color); 21 | virtual ArgbColor GetColor() const; 22 | virtual NTextAttr* SetBgColor(ArgbColor color); 23 | virtual ArgbColor GetBgColor() const; 24 | virtual NTextAttr* SetSingleLine(bool singleLine); 25 | virtual bool IsSingleLine() const; 26 | virtual NTextAttr* SetAlignFlags(UINT alignFlags); 27 | virtual UINT GetAlignFlags() const; 28 | 29 | public: 30 | DWORD GetDrawFlags() const; 31 | bool IsHorzAlign() const; 32 | bool IsVertAlign() const; 33 | 34 | private: 35 | ArgbColor color_; 36 | ArgbColor bgColor_; 37 | bool singleLine_; 38 | UINT alignFlags_; 39 | }; 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /nui/data/implement/NPackFileSystemImpl.cpp: -------------------------------------------------------------------------------- 1 | #include "stdafx.h" 2 | #include "NPackFileSystemImpl.h" 3 | 4 | #include "../../util/NFileUtil.h" 5 | 6 | 7 | NPackFileSystemImpl::NPackFileSystemImpl() : zipFile_(MemToolParam) 8 | { 9 | } 10 | 11 | NPackFileSystemImpl::~NPackFileSystemImpl() 12 | { 13 | } 14 | 15 | bool NPackFileSystemImpl::Init(LPCTSTR packFilePath) 16 | { 17 | if(!nui::Util::File::IsFileExists(packFilePath)) 18 | return false; 19 | 20 | if(zipFile_) 21 | zipFile_->Close(); 22 | 23 | if(!zipFile_->LoadFile(packFilePath)) 24 | return false; 25 | return true; 26 | } 27 | 28 | void NPackFileSystemImpl::Destroy() 29 | { 30 | zipFile_ = NULL; 31 | } 32 | 33 | bool NPackFileSystemImpl::IsFileExists(LPCTSTR filePath) 34 | { 35 | NAssertError(zipFile_ != NULL, _T("Invalid Zip File")); 36 | if(!zipFile_) 37 | return false; 38 | return zipFile_->IsFileExists(filePath); 39 | } 40 | 41 | bool NPackFileSystemImpl::LoadFile(LPCTSTR filePath, nui::Data::NBuffer* buffer) 42 | { 43 | NAssertError(zipFile_ != NULL, _T("Invalid Zip File")); 44 | if(!zipFile_) 45 | return false; 46 | if(!buffer) 47 | return false; 48 | return zipFile_->GetFileContent(filePath, buffer); 49 | } 50 | --------------------------------------------------------------------------------