Developer Application
Developers is an application to create, edit, submit other applications. Application developers can create a new application from several predefined template and submit applications to application directory.
Summary of Contents
- Install modules
- Module consists of one module definition file and several template files. See the sample module definition file.
- Module can have replaceables (defined in module definition file) which the user can specify before creating their own class
- Developers can create module used by other developers
- Preinstalled modules
- application module
- MCML page control module
- IDE module
- window module: singleton, instanced, top level, etc.
- test file module
Sample module definition file
%CODE{"lua"}%
--[[
Title: a sample module file
Author(s):
LiXizhi
Date: 2008/3/5
Desc:
use the lib:
NPL.load("(gl)script/kids/3DMapSystemApp/Developers/sample_module.lua");
-- file1.lua is assumed to be at the same directory as the sample_module.
%MODULEFILE{"file1.lua", replace = {
{from = "%SRC_DIR%", to="%INSTALL_DIR%"},
{from = "2008/3/5", to="2024-06-16"},
{from = "SampleApp", to="%INSTALL_NAME%"},
}, post_func="", dest = "%INSTALL_DIR%/%SRC_NAME%", }%
%MODULEFILE{"file2.lua", replace = {
{from = "%SRC_DIR%", to="%INSTALL_DIR%"},
{from = "2008/3/5", to="2024-06-16"},
{from = "SampleApp", to="%INSTALL_NAME%"},
}, post_func="", dest = "%INSTALL_DIR%/%SRC_NAME%", }%
Description:
- MODULEFILE: each module can contain one or several module files usually in its comment block, like this file.
- first string: the file path of the source template file. It does not contain parent path, it is assumed to be located at the same directory of the this module file.
- replace: an array of replaceables. Replaceable can contain predefined variables.
- INSTALL_DIR: where the user specified to install the module. such as "script/myapp"
- INSTALL_NAME: what name the user specified to install, such as "MyModule"
- SRC_NAME: name of the source template file. in the above case, it is "file1.lua"
- SRC_DIR: directory of the source template file. in the above case, it is the directory of this module file.
- post_func: the function to be called to perform some manual refinement after replaceables are performed.
- dest: the destination directory where the new instance of this file is installed.
]]
if(not sample_modules) then sample_modules = {} end
-- this is an sample post processing function that replaces one string with another in the template file.
--
@param input: input file text string
--
@return: result file text string.
function sample_modules.file1_post_func(input)
return string.gsub(input, "LiXizhi", "ParaEngine Corporation");
end
%ENDCODE%
Screenshots & User Guide
UI sample : Press F5 and choose solution manager to see this alive in
ParaIDE.net
Detailed Documentation
李西峙(李西峙) 10:23:45
http://wiki/twiki/bin/view/Main/DeveloperApp
李西峙(李西峙) 10:25:48
你看看这个程序,教给你开发如何。
之前让你看过的内容,都可以用上了。
张磊(张磊) 10:27:04
开发啥呢~~~ ?
李西峙(李西峙) 10:28:41
开发程序的程序。
李西峙(李西峙) 10:31:20
有点像 新建各种程序的向导。
张磊(张磊) 10:31:33
在这里面添加模块?
张磊(张磊) 10:32:27
有点像 新建各种程序的向导。
还是用npl mcml实现是吧?
李西峙(李西峙) 10:33:03
这是原来用C#做的一个界面。
但是用起来不方便。我们用NPL
MCML做一个许多页面的,向导模式的新建程序的程序
李西峙(李西峙) 10:34:00
我们可以先讨论下具体的UI和功能。
李西峙(李西峙) 10:34:42
这将是未来内外部的开发者都会使用的一个关键程序
李西峙(李西峙) 10:35:10
相当于Visual Studio 中的 File->new
张磊(张磊) 10:35:22
了解了~~~~
就是功能,展现形式 是类似与
现在是用 npl mcml来实现~~?
李西峙(李西峙) 10:35:35
npl mcml来实现
张磊(张磊) 10:35:48
就是可视化操作了 是这样吧
李西峙(李西峙) 10:36:06
向导式的UI. 下一步 下一步 下一步 下一步 完成
李西峙(李西峙) 10:36:49
UI部分可以用MCML实现。
李西峙(李西峙) 10:36:57
相当于学习MCML了。
李西峙(李西峙) 10:37:19
逻辑部分和之前的Wiki
DocGen 是一样的。
李西峙(李西峙) 10:37:30
也要许多regular expression.
--
LiXizhi - 21 Mar 2008
Installation Instructions
Note: You do not need to install anything on the client to use this contrib package.
- Download the ZIP file from the app web (see below)
- Restart application
Application Info
Related Topics: InsidePE
--
TWiki:Main/LiXizhi - 21 Mar 2008