From d7133ae17b25da05df3143147b60caa54c04edd7 Mon Sep 17 00:00:00 2001 From: Vadim Lopatin Date: Tue, 7 Apr 2015 15:02:51 +0300 Subject: [PATCH] initial version of dlangui:d3d example --- dlangui.sln | 41 +++++ dub.json | 2 + examples/d3d/d3d.visualdproj | 208 ++++++++++++++++++++++ examples/d3d/dub.json | 17 ++ examples/d3d/src/d3d.d | 54 ++++++ examples/d3d/views/res/i18n/en.ini | 40 +++++ examples/d3d/views/res/i18n/ru.ini | 34 ++++ examples/d3d/views/res/mdpi/cr3_logo.png | Bin 0 -> 8433 bytes examples/d3d/views/res/mdpi/tx_fabric.jpg | Bin 0 -> 9061 bytes examples/d3d/views/resources.list | 4 + 10 files changed, 400 insertions(+) create mode 100644 examples/d3d/d3d.visualdproj create mode 100644 examples/d3d/dub.json create mode 100644 examples/d3d/src/d3d.d create mode 100644 examples/d3d/views/res/i18n/en.ini create mode 100644 examples/d3d/views/res/i18n/ru.ini create mode 100644 examples/d3d/views/res/mdpi/cr3_logo.png create mode 100644 examples/d3d/views/res/mdpi/tx_fabric.jpg create mode 100644 examples/d3d/views/resources.list diff --git a/dlangui.sln b/dlangui.sln index 5bba1782..49686615 100644 --- a/dlangui.sln +++ b/dlangui.sln @@ -38,6 +38,11 @@ Project("{002A2DE9-8BB6-484D-9802-7E4AD4084715}") = "dmledit", "examples\dmledit {5FF17402-9997-4D0E-8068-6D84B8769D98} = {5FF17402-9997-4D0E-8068-6D84B8769D98} EndProjectSection EndProject +Project("{002A2DE9-8BB6-484D-9802-7E4AD4084715}") = "d3d", "examples\d3d\d3d.visualdproj", "{55B79469-E5D8-4B58-89BD-5A3E11A696B0}" + ProjectSection(ProjectDependencies) = postProject + {5FF17402-9997-4D0E-8068-6D84B8769D98} = {5FF17402-9997-4D0E-8068-6D84B8769D98} + EndProjectSection +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug COFF32|Any CPU = Debug COFF32|Any CPU @@ -390,6 +395,42 @@ Global {06D73450-2919-48A8-B2C3-738B12505D74}.TestDebug|Win32.ActiveCfg = Debug|Win32 {06D73450-2919-48A8-B2C3-738B12505D74}.TestDebug|Win32.Build.0 = Debug|Win32 {06D73450-2919-48A8-B2C3-738B12505D74}.TestDebug|x64.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug COFF32|Any CPU.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug COFF32|Mixed Platforms.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug COFF32|Mixed Platforms.Build.0 = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug COFF32|Win32.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug COFF32|Win32.Build.0 = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug COFF32|x64.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug GDC|Any CPU.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug GDC|Mixed Platforms.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug GDC|Mixed Platforms.Build.0 = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug GDC|Win32.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug GDC|Win32.Build.0 = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug GDC|x64.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug LDC|Any CPU.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug LDC|Mixed Platforms.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug LDC|Mixed Platforms.Build.0 = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug LDC|Win32.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug LDC|Win32.Build.0 = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug LDC|x64.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug|Any CPU.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug|Mixed Platforms.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug|Mixed Platforms.Build.0 = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug|Win32.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug|Win32.Build.0 = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Debug|x64.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Release|Any CPU.ActiveCfg = Release|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Release|Mixed Platforms.ActiveCfg = Release|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Release|Mixed Platforms.Build.0 = Release|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Release|Win32.ActiveCfg = Release|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Release|Win32.Build.0 = Release|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.Release|x64.ActiveCfg = Release|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.TestDebug|Any CPU.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.TestDebug|Mixed Platforms.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.TestDebug|Mixed Platforms.Build.0 = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.TestDebug|Win32.ActiveCfg = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.TestDebug|Win32.Build.0 = Debug|Win32 + {55B79469-E5D8-4B58-89BD-5A3E11A696B0}.TestDebug|x64.ActiveCfg = Debug|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/dub.json b/dub.json index 730852ad..fa967163 100644 --- a/dub.json +++ b/dub.json @@ -33,6 +33,7 @@ "./examples/helloworld/", "./examples/example1/", "./examples/dmledit/", + "./examples/d3d/", "./examples/tetris/" ], @@ -63,6 +64,7 @@ "derelict-sdl2": "~>1.9.1", "gl3n": "~>1.0.1" } + "copyFiles-windows": ["lib/SDL2.dll"], }, { "name": "sfml", diff --git a/examples/d3d/d3d.visualdproj b/examples/d3d/d3d.visualdproj new file mode 100644 index 00000000..05d50817 --- /dev/null +++ b/examples/d3d/d3d.visualdproj @@ -0,0 +1,208 @@ + + {55B79469-E5D8-4B58-89BD-5A3E11A696B0} + + 0 + 0 + 0 + 2 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 2.043 + 0 + 0 + 0 + 0 + 0 + $(CC) -c + 1 + $(DMDInstallDir)windows\bin\dmd.exe + $(SolutionDir)/src $(SolutionDir)/3rdparty $(SolutionDir)/3rdparty/libpng/source $(SolutionDir)/../DerelictGL3/source $(SolutionDir)/../DerelictUtil/source $(SolutionDir)/../DerelictFT/source $(SolutionDir)/../DerelictSDL2/source $(SolutionDir)/../de_image/source/interfaces $(SolutionDir)/../de_image/source/png $(SolutionDir)/../dlib + views views/res views/res/i18n views/res/mdpi + $(ConfigurationName) + $(OutDir) + + + 0 + + + + + 0 + + + 1 + $(IntDir)\$(TargetName).json + 0 + + 0 + Unicode USE_OPENGL USE_FREETYPE USE_SDL EmbedStandardResources + 0 + 0 + 0 + + + + 0 + + 1 + $(VisualDInstallDir)cv2pdb\cv2pdb.exe + 0 + 0 + 0 + + + + ole32.lib kernel32.lib user32.lib comctl32.lib comdlg32.lib + + + + $(OutDir)\$(ProjectName).exe + 1 + 2 + + + + *.obj;*.cmd;*.build;*.json;*.dep + + + 0 + 0 + 0 + 2 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 2.043 + 0 + 0 + 0 + 0 + 0 + $(CC) -c + 1 + $(DMDInstallDir)windows\bin\dmd.exe + + + $(ConfigurationName) + $(OutDir) + + + 0 + + + + + 0 + + + 1 + $(IntDir)\$(TargetName).json + 0 + + 0 + + 0 + 0 + 0 + + + + 0 + + 0 + $(VisualDInstallDir)cv2pdb\cv2pdb.exe + 0 + 0 + 0 + + + + ole32.lib kernel32.lib user32.lib comctl32.lib comdlg32.lib + + + + $(OutDir)\$(ProjectName).exe + 1 + 1 + + + + *.obj;*.cmd;*.build;*.json;*.dep + + + + + diff --git a/examples/d3d/dub.json b/examples/d3d/dub.json new file mode 100644 index 00000000..39b6f270 --- /dev/null +++ b/examples/d3d/dub.json @@ -0,0 +1,17 @@ +{ + "name": "d3d", + "description": "dlangui library example 3D Application", + "homepage": "https://github.com/buggins/dlangui", + "license": "Boost", + "authors": ["Vadim Lopatin"], + + "stringImportPaths": ["views", "views/res", "views/res/i18n", "views/res/mdpi"], + + "targetPath": "bin", + "targetName": "d3d", + "targetType": "executable", + + "dependencies": { + "dlangui": "*", + } +} diff --git a/examples/d3d/src/d3d.d b/examples/d3d/src/d3d.d new file mode 100644 index 00000000..4d3f96a2 --- /dev/null +++ b/examples/d3d/src/d3d.d @@ -0,0 +1,54 @@ +module d3d; + +import dlangui; + +mixin APP_ENTRY_POINT; + +/// entry point for dlangui based application +extern (C) int UIAppMain(string[] args) { + // create window + Window window = Platform.instance.createWindow("DlangUI example - 3D Application", null); + + // create some widget to show in window + //window.mainWidget = (new Button()).text("Hello, world!"d).margins(Rect(20,20,20,20)); + window.mainWidget = parseML(q{ + VerticalLayout { + margins: 10 + padding: 10 + backgroundColor: "#C0E0E070" // semitransparent yellow background + // red bold text with size = 150% of base style size and font face Arial + TextWidget { text: "Hello World example for DlangUI"; textColor: "red"; fontSize: 150%; fontWeight: 800; fontFace: "Arial" } + // arrange controls as form - table with two columns + TableLayout { + colCount: 2 + TextWidget { text: "param 1" } + EditLine { id: edit1; text: "some text" } + TextWidget { text: "param 2" } + EditLine { id: edit2; text: "some text for param2" } + TextWidget { text: "some radio buttons" } + // arrange some radio buttons vertically + VerticalLayout { + RadioButton { id: rb1; text: "Item 1" } + RadioButton { id: rb2; text: "Item 2" } + RadioButton { id: rb3; text: "Item 3" } + } + TextWidget { text: "and checkboxes" } + // arrange some checkboxes horizontally + HorizontalLayout { + CheckBox { id: cb1; text: "checkbox 1" } + CheckBox { id: cb2; text: "checkbox 2" } + } + } + HorizontalLayout { + Button { id: btnOk; text: "Ok" } + Button { id: btnCancel; text: "Cancel" } + } + } + }); + + // show window + window.show(); + + // run message loop + return Platform.instance.enterMessageLoop(); +} diff --git a/examples/d3d/views/res/i18n/en.ini b/examples/d3d/views/res/i18n/en.ini new file mode 100644 index 00000000..576671ef --- /dev/null +++ b/examples/d3d/views/res/i18n/en.ini @@ -0,0 +1,40 @@ +EXIT=Exit +MENU_FILE=&File +MENU_FILE_NEW=&New +MENU_FILE_OPEN=&Open +MENU_FILE_OPEN_RECENT=Open recent +MENU_FILE_SAVE=&Save +MENU_FILE_EXIT=E&xit +MENU_EDIT=&Edit +MENU_EDIT_COPY=&Copy +MENU_EDIT_PASTE=&Paste +MENU_EDIT_CUT=Cu&t +MENU_EDIT_UNDO=&Undo +MENU_EDIT_REDO=&Redo +MENU_EDIT_INDENT=Indent block +MENU_EDIT_UNINDENT=Unindent block +MENU_EDIT_TOGGLE_LINE_COMMENT=Toggle line comment +MENU_EDIT_TOGGLE_BLOCK_COMMENT=Toggle block comment +MENU_EDIT_PREFERENCES=&Preferences +MENU_VIEW=&View +MENU_VIEW_LANGUAGE=Interface &Language +MENU_VIEW_LANGUAGE_EN=English +MENU_VIEW_LANGUAGE_RU=Русский +MENU_VIEW_THEME=&Theme +MENU_VIEW_THEME_DEFAULT=Default +MENU_VIEW_THEME_DARK=Dark +MENU_VIEW_THEME_CUSTOM1=Custom 1 +MENU_WINDOW=&Window +MENU_WINDOW_PREFERENCES=&Preferences +MENU_HELP=&Help +MENU_HELP_VIEW_HELP=&View help +MENU_HELP_ABOUT=&About +MENU_DEBUG_UPDATE_PREVIEW=Update Preview + +TAB_LONG_LIST=Long list +TAB_BUTTONS=Buttons +TAB_ANIMATION=Animation +TAB_TABLE_LAYOUT=Table layout +TAB_EDITORS=Editors +TAB_CANVAS=Canvas + diff --git a/examples/d3d/views/res/i18n/ru.ini b/examples/d3d/views/res/i18n/ru.ini new file mode 100644 index 00000000..ab52d3d0 --- /dev/null +++ b/examples/d3d/views/res/i18n/ru.ini @@ -0,0 +1,34 @@ +EXIT=Выход +MENU_FILE=&Файл +MENU_FILE_OPEN=&Открыть +MENU_FILE_OPEN_RECENT=Открыть из последних +MENU_FILE_SAVE=&Сохранить +MENU_FILE_EXIT=Вы&ход +MENU_EDIT=&Правка +MENU_EDIT_COPY=&Копировать +MENU_EDIT_PASTE=&Вставить +MENU_EDIT_CUT=Вырезать +MENU_EDIT_UNDO=&Отмена +MENU_EDIT_REDO=&Повторить +MENU_EDIT_PREFERENCES=&Настройки +MENU_VIEW=&Вид +MENU_VIEW_LANGUAGE=&Язык интерфейса +MENU_VIEW_LANGUAGE_EN=English +MENU_VIEW_LANGUAGE_RU=Русский +MENU_VIEW_THEME=&Тема +MENU_VIEW_THEME_DEFAULT=Стандартная +MENU_VIEW_THEME_DARK=Тёмная +MENU_VIEW_THEME_CUSTOM1=Пример 1 +MENU_WINDOW=&Окно +MENU_WINDOW_PREFERENCES=&Настройки +MENU_HELP=&Справка +MENU_HELP_VIEW_HELP=&Просмотр справки +MENU_HELP_ABOUT=&О программе + +TAB_LONG_LIST=Длинный список +TAB_BUTTONS=Кнопки +TAB_ANIMATION=Анимация +TAB_TABLE_LAYOUT=Табличный layout +TAB_EDITORS=Редакторы + + diff --git a/examples/d3d/views/res/mdpi/cr3_logo.png b/examples/d3d/views/res/mdpi/cr3_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..6e0d94ea246c86dcc40b8b8495f39b55c65918c6 GIT binary patch literal 8433 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 T;=!W_00000NkvXXu0mjfkMScx literal 0 HcmV?d00001 diff --git a/examples/d3d/views/res/mdpi/tx_fabric.jpg b/examples/d3d/views/res/mdpi/tx_fabric.jpg new file mode 100644 index 0000000000000000000000000000000000000000..6c33894a25239d022c5ccb70598f71cd9d0fff11 GIT binary patch literal 9061 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 z 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 literal 0 HcmV?d00001 diff --git a/examples/d3d/views/resources.list b/examples/d3d/views/resources.list new file mode 100644 index 00000000..0abcf429 --- /dev/null +++ b/examples/d3d/views/resources.list @@ -0,0 +1,4 @@ +res/i18n/en.ini +res/i18n/ru.ini +res/mdpi/cr3_logo.png +res/mdpi/tx_fabric.jpg