GroupsAppDev
description: 璁╃帺瀹跺缓绔嬭嚜宸辩殑缁勭兢銆佸叕浼氥€佸叕鍙搞€傜帺瀹跺彲浠ユ祻瑙堛€佸姞鍏ュ叾浠栦汉寤虹珛鐨勭粍缁囷紝鍙傚姞缁勭粐鐨勮璁恒€佹椿鍔ㄧ瓑銆傜粍缇ょ殑鐢ㄦ埛閫氬父浼氳仛闆嗗湪鍩庡競涓殑鏌愪簺浣嶇疆銆傛煇浜涘簽澶с€佹椿璺冦€佸湴鐞嗕綅缃泦涓殑缁勭兢鍙互鍚戝畼鏂圭敵璇锋垚涓烘柊鐨勫煄甯傘€
Groups app for Paraworld
Title |
Groups app for Paraworld |
Author(s) |
LiXizhi |
Date |
2008/1/31 |
File |
script/kids/3DMapSystemApp/Groups/app_main.lua |
Description
[VS. MAP city] There is a strong group called CITY in the map application, where only sponsored users, offcials and high profile users can create. CITY is a serious and geographical network usually created beforehand, such as Shenzhen, New York, German, XX College.
New user is usually asked to join at least one of them to become a social member. A user can join only one primary CITY and many secondary CITYs.
[Groups] Group is a light weighted concept offered by the Groups applications. It allows everyone to create and join a group, such as a special interest group, a small business company, etc. Groups may or may not be geographics based, but it is common to see members of a group
purchasing land and live next to one another in one or more CITIES. One large, active, geographically centric groups may be promoted to CITY by Paraworld officials.
[App status] offcial, preinstalled
db registration insert script
INSERT INTO apps VALUES (NULL, 'Groups_GUID', 'Groups', '1.0.0', 'http://www.paraengine.com/apps/Groups_v1.zip', 'YourCompany', 'enUS', 'script/kids/3DMapSystemApp/Groups/IP.xml', '', 'script/kids/3DMapSystemApp/Groups/app_main.lua', 'Map3DSystem.App.Groups.MSGProc', 1);
Sample Code
NPL.load("(gl)script/kids/3DMapSystemApp/Groups/app_main.lua");
Member Functions
Map3DSystem.App.Groups.OnConnection
requires
create class
commonlib.setfield("Map3DSystem.App.Groups", {});
event handlers
OnConnection method is the obvious point to place your UI (menus, mainbars, tool buttons) through which the user will communicate to the app.
This method is also the place to put your validation code if you are licensing the add-in. You would normally do this before putting up the UI.
If the user is not a valid user, you would not want to put the UI into the IDE.
- param app : the object representing the current application in the IDE.
- param connectMode : type of ConnectMode.
syntax
function Map3DSystem.App.Groups.OnConnection(app, connectMode)
parameters
app |
the object representing the current application in the IDE. |
connectMode |
|
Map3DSystem.App.Groups.OnDisconnection
Receives notification that the Add-in is being unloaded.
syntax
function Map3DSystem.App.Groups.OnDisconnection(app, disconnectMode)
parameters
Map3DSystem.App.Groups.OnQueryStatus
This is called when the command's availability is updated
When the user clicks a command (menu or mainbar button), the
QueryStatus event is fired.
The
QueryStatus event returns the current status of the specified named command, whether it is enabled, disabled,
or hidden in the
CommandStatus parameter, which is passed to the msg by reference (or returned in the event handler).
- param commandName : The name of the command to determine state for. Usually in the string format "Category.SubCate.Name".
- param statusWanted : what status of the command is queried. it is of type CommandStatusWanted
- return __ : returns according to statusWanted. it may return an integer by adding values in CommandStatus.
syntax
function Map3DSystem.App.Groups.OnQueryStatus(app, commandName, statusWanted)
parameters
app |
|
commandName |
The name of the command to determine state for. Usually in the string format "Category.SubCate.Name". |
statusWanted |
|
return |
returns according to statusWanted. it may return an integer by adding values in CommandStatus. |
Map3DSystem.App.Groups.OnExec
This is called when the command is invoked.The Exec is fired after the
QueryStatus event is fired, assuming that the return to the statusOption parameter of
QueryStatus is supported and enabled.
This is the event where you place the actual code for handling the response to the user click on the command.
- param commandName : The name of the command to determine state for. Usually in the string format "Category.SubCate.Name".
syntax
function Map3DSystem.App.Groups.OnExec(app, commandName, params)
parameters
app |
|
commandName |
The name of the command to determine state for. Usually in the string format "Category.SubCate.Name". |
params |
|
Map3DSystem.App.Groups.OnRenderBox
Change and render the 3D world with mcml data that is usually retrieved from the current user's profile page for this application.
syntax
function Map3DSystem.App.Groups.OnRenderBox(mcmlData)
parameters
Map3DSystem.App.Groups.Navigate
called when the user wants to nagivate to the 3D world location relavent to this application
syntax
function Map3DSystem.App.Groups.Navigate()
Map3DSystem.App.Groups.GotoHomepage
called when user clicks to check out the homepage of this application. Homepage usually includes:
developer info, support, developer worlds information, app global news, app updates, all community user rating, active users, trade, currency transfer, etc.
syntax
function Map3DSystem.App.Groups.GotoHomepage()
Map3DSystem.App.Groups.DoQuickAction
called when user clicks the quick action for this application.
syntax
function Map3DSystem.App.Groups.DoQuickAction()
Map3DSystem.App.Groups.MSGProc
client world database function helpers.
all related messages
APPS can be invoked in many ways:
Through app Manager
mainbar or menu command or buttons
Command Line
3D World installed apps
syntax
function Map3DSystem.App.Groups.MSGProc(window, msg)
parameters