3 #include "qnstgraphicsmedia.h"
4 #include "qnstgraphicsbody.h"
5 #include "qnstgraphicscontext.h"
6 #include "qnstgraphicsswitch.h"
7 #include "qnstgraphicsport.h"
8 #include "qnstgraphicsswitchport.h"
9 #include "qnstgraphicsarea.h"
10 #include "qnstgraphicsproperty.h"
11 #include "qnstgraphicslink.h"
14 std::map <Qnst::EntityType, QString> QnstUtil::iconFromTypeMap =
16 (Qnst::Text,
":/icon/text")
17 (Qnst::Image,
":/icon/image")
18 (Qnst::Audio,
":/icon/audio")
19 (Qnst::Video,
":/icon/video")
20 (Qnst::Html,
":/icon/html")
21 (Qnst::NCL,
":/icon/ncl")
22 (Qnst::Settings,
":/icon/settings")
23 (Qnst::NCLua,
":/icon/script")
24 (Qnst::Media,
":/icon/media")
26 (Qnst::Context,
":icon/context")
27 (Qnst::Switch,
":icon/switch")
28 (Qnst::Body,
":icon/body")
30 (Qnst::Port,
":icon/port")
31 (Qnst::SwitchPort,
":icon/switchport")
32 (Qnst::Area,
":icon/area")
33 (Qnst::Aggregator,
":icon/aggregator")
36 (Qnst::Link,
":icon/aggregator");
39 std::map <QString, Qnst::EntityType> QnstUtil::typeFromExtMap =
52 (
"mpeg4", Qnst::Video)
66 std::map <QString, Qnst::EntityType> QnstUtil::typeFromStr =
69 (
"context", Qnst::Context)
72 (
"switch", Qnst::Switch)
73 (
"switchPort", Qnst::SwitchPort)
74 (
"mapping", Qnst::Mapping)
76 (
"media", Qnst::Media)
78 (
"property", Qnst::Property)
82 (
"bindParam", Qnst::BindParam)
88 (
"aggregator", Qnst::Aggregator);
90 std::map <Qnst::EntityType, QString> QnstUtil::strFromType =
91 invert_map<Qnst::EntityType, QString>(QnstUtil::typeFromStr);
94 std::map <Qnst::EntityType, QString> QnstUtil::prefixIdFromType =
102 (Qnst::Settings,
"m")
106 (Qnst::Context,
"ctx")
107 (Qnst::Switch,
"swt")
111 (Qnst::SwitchPort,
"swp")
114 (Qnst::Aggregator,
"link")
116 (Qnst::Link,
"link");
119 std::map <QString, Qnst::BindType> QnstUtil::bindTypeFromRoleStr =
121 (
"onBegin", Qnst::onBegin)
122 (
"onEnd", Qnst::onEnd)
123 (
"onSelection", Qnst::onSelection)
124 (
"onResume", Qnst::onResume)
125 (
"onPause", Qnst::onPause)
126 (
"onBeginAttribution", Qnst::onBeginAttribution)
127 (
"onEndAttribution", Qnst::onEndAttribution)
128 (
"onPauseAttribution", Qnst::onPauseAttribution)
129 (
"onResumeAttribution", Qnst::onResumeAttribution)
131 (
"start", Qnst::Start)
133 (
"resume", Qnst::Resume)
134 (
"pause", Qnst::Pause)
138 std::map <Qnst::BindType, QString> QnstUtil::strFromBindType =
139 invert_map<Qnst::BindType, QString> (QnstUtil::bindTypeFromRoleStr);
144 const QMap <QString, QString> &props)
160 entity->setnstType(type);
179 case Qnst::SwitchPort:
191 case Qnst::Aggregator:
204 entity->setProperties(props);
211 Qnst::EntityType type;
213 if (mimeType.startsWith(
"image"))
215 else if (mimeType.startsWith(
"audio"))
217 else if (mimeType.startsWith(
"video"))
219 else if (mimeType ==
"text/html")
221 else if (mimeType ==
"application/x-ginga-NCL")
223 else if (mimeType.startsWith(
"text"))
225 else if (mimeType ==
"application/x-ncl-settings" ||
226 mimeType ==
"application/x-ginga-settings")
227 type = Qnst::Settings;
228 else if (mimeType ==
"application/x-ginga-NCLua")
239 if(iconFromTypeMap.count(type))
240 path = iconFromTypeMap[type];
242 path =
":/icon/media";
249 if(typeFromExtMap.count(ext))
250 return typeFromExtMap[ext];
257 if(typeFromStr.count(strType))
258 return typeFromStr[strType];
265 if(strFromType.count(type))
266 return strFromType[type];
273 if(prefixIdFromType.count(type))
274 return prefixIdFromType[type];
281 if(bindTypeFromRoleStr.count(role))
282 return bindTypeFromRoleStr[role];
284 return Qnst::NoBindType;
289 if(strFromBindType.count(type))
290 return strFromBindType[type];
292 return QString(
"NoBindType");