31 from RtmCompData
import *
32 from RtmDialog
import *
42 for item_name, handler
in menulist:
43 if item_name ==
"---":
44 self.
menu.AppendSeparator()
48 self.
menu.AppendMenu(new_id, item_name, sm)
51 self.
parent.Bind(wx.EVT_MENU, handler, id=new_id)
52 item = wx.MenuItem(self.
menu, new_id, item_name)
53 self.
menu.AppendItem(item)
56 """メニューを取得する
[引数]
void
[戻り値]
self.menu -- メニューオブジェクト
62 self.menu -- メニューオブジェクト 67 """カレントのツリーItemIDををセットする
[引数]
item -- ItemID
[戻り値]
void
78 test_id = self.
parent.tree.GetItemText(self.
item)
81 item = self.
parent.tree.GetItemParent(self.
item)
82 parent_path = self.
parent.makeFullPath(item)
84 cxt_obj = self.
parent.myDict.GetObjRefToFullpath(parent_path)
86 cxt_obj = self.
parent.nshelper.root_cxt
88 cxt_obj = self.
parent.nshelper.root_cxt
89 bname = self.
parent.myDict.GetBindingNameToFullpath(fullpath)
90 self.
parent.nshelper.DeleteToContext(cxt_obj,bname)
93 test_id = self.
parent.tree.GetItemText(self.
item)
95 mod_name = self.
parent.myDict.GetCompName(fullpath)
96 cate_name = self.
parent.myDict.GetCateName(fullpath)
98 print 'cate_cxt search error!!' 100 mgrpath = self.
parent.searchManagerPath(self.
item)
102 print 'RTCManager object-ref search error!!' 105 objref = self.
parent.myDict.GetObjRefToFullpath(mgrpath)
107 objref._narrow(RTM.RTCManager)
109 (ret,ret_str) = objref.create_component(mod_name, cate_name)
116 """コンポーネントItemポップアップクラス""" 118 menulist = [(
"Start", self.
OnStart),
128 return RtmPopup.__init__(self, parent, menulist)
131 """現在のItemIdからFullPathを生成 144 tmp_id = self.
parent.tree.GetItemParent(cur_id)
147 name = self.
parent.tree.GetItemText(tmp_id)
151 ret = name +
'/' + ret
156 """コンポーネントをrtc_start()させる [引数]
event -- Event, 使用していない
[戻り値]
void
158 event -- Event, 使用していない 166 ret = self.
parent.myDict.TreeListCompStart(fullpath)
167 if (ret != RTM.RTM_OK):
175 """コンポーネントをrtc_stop()させる [引数]
event -- Event, 使用していない
[戻り値]
void
177 event -- Event, 使用していない 184 ret = self.
parent.myDict.TreeListCompStop(fullpath)
188 """コンポーネントをrtc_reset()させる [引数]
event -- Event, 使用していない
[戻り値]
void
190 event -- Event, 使用していない 197 ret = self.
parent.myDict.TreeListCompReset(fullpath)
201 """コンポーネントをrtc_exit()させる [引数]
event -- Event, 使用していない
[戻り値]
void
203 event -- Event, 使用していない 210 ret = self.
parent.myDict.TreeListCompExit(fullpath)
214 """コンポーネントをrtc_kill()させる [引数]
event -- Event, 使用していない
[戻り値]
void
216 event -- Event, 使用していない 223 ret = self.
parent.myDict.TreeListCompKill(fullpath)
228 kind = self.
parent.myDict.GetKindToFullpath(fullpath)
230 ref = self.
parent.myDict.GetObjRefToFullpath(fullpath)
232 self.
parent.frame.profilepanel.RefreshProfile(ref.get_component_profile())
244 """モジュールItemポップアップクラス""" 246 menulist = [(
"Create", self.
OnCreate),
250 return RtmPopup.__init__(self, parent, menulist)
265 """Unknown Itemポップアップクラス""" 267 menulist = [(
"Delete", self.
OnDelete)]
268 return RtmPopup.__init__(self, parent, menulist)
276 """マネージャItemポップアップクラス""" 278 menulist = [(
"Create",
None),
284 return RtmPopup.__init__(self, parent, menulist)
287 tmp_id = self.
menu.FindItem(
"Create")
289 item_list = self.
menu.GetMenuItems()
291 for item
in item_list:
292 if item.GetId() == tmp_id:
293 sub_menu = item.GetSubMenu()
296 child_items = sub_menu.GetMenuItems()
297 for item
in child_items:
302 mgrpath = self.
parent.searchManagerPath(self.
item)
304 print 'RTCManager object-ref search error!!' 307 objref = self.
parent.myDict.GetObjRefToFullpath(mgrpath)
309 objref._narrow(RTM.RTCManager)
311 fact_list = objref.factory_list()
315 for item_struct
in fact_list:
316 name = item_struct.name
317 cate = item_struct.category
318 item_name = cate +
'/' + name
320 item = wx.MenuItem(sub_menu, new_id, item_name)
321 sub_menu.AppendItem(item)
325 item_id= event.GetId()
326 item_name = self.
menu.GetLabel(item_id)
327 num = item_name.find(
'/')
328 cate = str(item_name[0:num])
329 name = str(item_name[num+1:])
330 mgrpath = self.
parent.searchManagerPath(self.
item)
332 print 'RTCManager object-ref search error!!' 334 objref = self.
parent.myDict.GetObjRefToFullpath(mgrpath)
336 objref._narrow(RTM.RTCManager)
338 (ret,ret_str) = objref.create_component(name, cate)
344 mgrpath = self.
parent.searchManagerPath(self.
item)
346 print 'RTCManager object-ref search error!!' 348 cate_name = self.
parent.searchCategoryName(self.
item)
350 print 'cate_cxt search error!!' 353 objref = self.
parent.myDict.GetObjRefToFullpath(mgrpath)
355 objref._narrow(RTM.RTCManager)
357 item_id= event.GetId()
358 item_name = self.
menu.GetLabel(item_id)
359 print "item_name:",item_name
361 (ret,ret_str) = objref.create_component(item_name, cate_name)
378 """ネームサーバItemポップアップクラス""" 382 return RtmPopup.__init__(self, parent, menulist)
385 """ネームサーバ接続ダイアログを表示させる [引数]
event -- Event, 使用していない
[戻り値]
void
387 event -- Event, 使用していない 392 self.
parent.OnConnectNSClick(
None)
395 """ネーミングツリーをリフレッシュする [引数]
event -- Event, 使用していない
[戻り値]
void
397 event -- Event, 使用していない 403 self.
parent.myDict.Mutex.lock(self.
parent.Refresh,dummy)
404 self.
parent.myDict.Mutex.unlock()
410 def __init__(self, parent, id, pos, size, style, log):
416 pos -- 位置 size -- サイズ
style -- ウインドウスタイル
# wx.TreeCtrl と同じ
[戻り値]
this
418 style -- ウインドウスタイル # wx.TreeCtrl と同じ
[戻り値]
this
425 wx.TreeCtrl.__init__(self, parent, id, pos, size, style)
429 il = wx.ImageList(isz[0], isz[1])
454 self.SetImageList(il)
458 self.
root = self.AddRoot(
"NS:")
459 self.SetPyData(self.
root,
None)
461 wx.TreeItemIcon_Normal)
463 wx.TreeItemIcon_Expanded)
464 self.Expand(self.
root)
465 rootitem_id = self.GetRootItem()
466 self.SelectItem(rootitem_id)
471 """itemの比較
[引数]
item1 -- item1
item2 -- item2
[戻り値]
-1 -- t1 < t2
0 -- t1 = t2
1 -- t1 > t2
482 t1 = self.GetItemText(item1)
483 t2 = self.GetItemText(item2)
484 self.
log.WriteText(
'compare: ' + t1 +
' <> ' + t2 +
'\n')
485 if t1 < t2:
return -1
486 if t1 == t2:
return 0
498 rootitem_id = self.GetRootItem()
507 if 'cxt_' == kind[0:4]
or '' == kind
or kind ==
None:
512 if mode == kindCheck
or mode ==
'all' or kind ==
'rtc':
520 """ディクショナリを与えてItemをセット
[引数]
dict -- Item のディクショナリ
[戻り値]
void
523 dict -- Item のディクショナリ
[戻り値]
void
528 rootitem_id = self.GetRootItem()
534 self.DeleteChildren(rootitem_id)
535 self.SelectItem(rootitem_id)
538 """Item をディクショナリから再帰的にセットする
[引数]
item_id -- 現在のレベルのItemのID
dict -- Item の残りのディクショナリ
[戻り値]
void
541 item_id -- 現在のレベルのItemのID 542 dict -- Item の残りのディクショナリ
[戻り値]
void
555 for dict_name
in dict.keys():
557 kind = dict[dict_name][0][
'kind']
561 if dict_name
in items.keys():
565 self.SetPyData(items[dict_name][0], dict[dict_name][0])
566 new_item_id = items[dict_name][0]
569 new_item_id = self.AppendItem(item_id, dict_name)
570 self.SetPyData(new_item_id, dict[dict_name][0])
571 print dict_name +
":", self.
depth 575 self.SetItemImage(new_item_id, self.
treeimg_list[kind][0],
576 wx.TreeItemIcon_Normal)
577 self.SetItemImage(new_item_id, self.
treeimg_list[kind][0],
578 wx.TreeItemIcon_Expanded)
584 if dict[dict_name][1] !=
None and check_disp == 1:
588 for item_name
in items.keys():
589 if item_name
in dict.keys():
590 kind = dict[item_name][0][
'kind']
593 self.DeleteChildren(items[item_name][0])
594 self.Delete(items[item_name][0])
596 self.DeleteChildren(items[item_name][0])
597 self.Delete(items[item_name][0])
601 """現在のItemID以下の子供のIDリストを取得する
[引数]
paren_id -- 現在のレベルのItemID
[戻り値]
items -- 子供のItemのリスト
604 paren_id -- 現在のレベルのItemID 610 if self.ItemHasChildren(parent_id):
611 id, cookie = self.GetFirstChild(parent_id)
612 items.append((id, cookie))
614 for i
in range(self.GetChildrenCount(parent_id,
False) - 1):
615 id, cookie = self.GetNextChild(parent_id, cookie)
616 items.append((id, cookie))
620 """現在のItemID以下の子供のItemTextリストを取得する
[引数]
paren_id -- 現在のレベルのItemID
[戻り値]
items -- 子供のItemTextのリスト
623 paren_id -- 現在のレベルのItemID 626 items -- 子供のItemTextのリスト 629 if self.ItemHasChildren(parent_id):
630 id, cookie = self.GetFirstChild(parent_id)
631 item_names[self.GetItemText(id)] = (id, cookie)
633 for i
in range(self.GetChildrenCount(parent_id,
False) - 1):
634 id, cookie = self.GetNextChild(parent_id, cookie)
635 item_names[self.GetItemText(id)] = (id, cookie)
639 """現在のItemID以下の子供のItemTextを再帰的に表示する
[引数]
item_id -- 現在のレベルのItemID
[戻り値]
void
642 item_id -- 現在のレベルのItemID 648 if self.ItemHasChildren(id):
649 print self.GetItemText(id)
652 print self.GetItemText(id)
657 """ネーミングツリーコントロールのパネルクラス""" 662 frame -- 親フレーム parent -- 親ウインドウ
[戻り値]
this
673 wx.Panel.__init__(self, parent, -1, style=wx.WANTS_CHARS)
674 self.Bind(wx.EVT_SIZE, self.
OnSize)
687 self.
tree.Expand(self.
tree.GetRootItem())
706 self.Bind(wx.EVT_RIGHT_UP, self.
OnRightUp)
721 thread.start_new_thread(self.
OnRefresh,())
732 """ツリー表示のためのディクショナリを生成 740 rootitem_id = self.
tree.GetRootItem()
742 self.
myDict.SetObjRefToFullpath(fullpath,
None)
746 """ツリー表示のためのディクショナリを再帰的に生成 748 item_id -- 現在のレベルのItemID 753 for id, cookie
in self.
tree.GetChildrenItemIdList(item_id):
754 if self.
tree.ItemHasChildren(id):
755 data = self.
tree.GetItemData(id)
756 comp = data.GetData()
758 self.
myDict.SetObjRefToFullpath(fullpath,comp)
761 data = self.
tree.GetItemData(id)
762 comp = data.GetData()
764 self.
myDict.SetObjRefToFullpath(fullpath,comp)
767 """ネームサーバのアドレス:ポートをセット
[引数]
name_server -- ネームサーバのアドレス:ポート
[戻り値]
void
770 name_server -- ネームサーバのアドレス:ポート
[戻り値]
void
778 """ネームサーバのアドレス:ポートを取得
[引数]
void
[戻り値]
name_server -- ネームサーバのアドレス:ポート
784 name_server -- ネームサーバのアドレス:ポート 789 """ネームサービスホスト:ポート設定ダイアログを表示 792 event -- Event, 使用していない 799 style = wx.DEFAULT_DIALOG_STYLE
803 val = win.ShowModal()
814 """ネーミングツリーをリフレッシュ ループするので別スレッドから呼ぶべき
[引数]
void
[戻り値]
void
826 self.
frame.close_evt.clear()
830 self.
myDict.Mutex.unlock()
832 self.
frame.close_evt.set()
835 """ネーミングツリーをリフレッシュ
[引数]
void
[戻り値]
void
859 """ツリー右クリック時コンテキストメニュー表示 862 event -- イベント
[戻り値]
void
868 pt = event.GetPosition();
869 item, flags = self.tree.HitTest(pt)
872 if self.tree.GetItemText(item) ==
"":
876 fullpath = self.makeFullPath(cur_item)
877 kind = self.myDict.GetKindToFullpath(fullpath)
880 self.names_popup.SetItem(item)
881 self.PopupMenu(self.names_popup.GetMenu(),
883 elif (kind ==
'mgr' or kind ==
'mgr_cxt'):
884 self.manager_popup.SetItem(item)
885 self.manager_popup.SetSubMenu()
886 self.PopupMenu(self.manager_popup.GetMenu(),
888 elif (kind ==
'mod_cxt'):
889 self.module_popup.SetItem(item)
890 self.PopupMenu(self.module_popup.GetMenu(),
892 elif (kind ==
'rtc'):
893 self.comp_popup.SetItem(item)
894 self.PopupMenu(self.comp_popup.GetMenu(),
897 self.unknown_popup.SetItem(item)
898 self.PopupMenu(self.unknown_popup.GetMenu(),
905 self.
log.WriteText(
"OnBeginEdit\n")
907 if self.
tree.GetItemText(event.GetItem()) ==
"The Root Item":
909 self.
log.WriteText(
"You can't edit this one...\n")
913 root = event.GetItem()
914 (child, cookie) = self.
tree.GetFirstChild(root)
917 self.
log.WriteText(
"Child [%s] visible = %d" %
918 (self.
tree.GetItemText(child),
919 self.
tree.IsVisible(child)))
920 (child, cookie) = self.
tree.GetNextChild(root, cookie)
925 self.
log.WriteText(
"OnEndEdit\n")
927 for x
in event.GetLabel():
928 if x
in string.digits:
929 self.
log.WriteText(
"You can't enter digits...\n")
934 pt = event.GetPosition();
935 item, flags = self.
tree.HitTest(pt)
936 self.
log.WriteText(
"OnLeftDClick: %s\n" % self.
tree.GetItemText(item))
937 rootitem_id = self.
tree.GetRootItem()
938 parent = self.
tree.GetItemParent(item)
940 self.
tree.SortChildren(parent)
946 w,h = self.GetClientSizeTuple()
947 self.
tree.SetDimensions(0, 0, w, h)
950 item = event.GetItem()
951 self.
log.WriteText(
"OnItemExpanded: %s\n" % self.
tree.GetItemText(item))
954 item = event.GetItem()
955 self.
log.WriteText(
"OnItemCollapsed: %s\n" % self.
tree.GetItemText(item))
959 self.
log.WriteText(
"OnSelChanged: %s\n" % self.
tree.GetItemText(self.
item))
960 if wx.Platform ==
'__WXMSW__':
961 self.
log.WriteText(
"BoundingRect: %s\n" %
962 self.
tree.GetBoundingRect(self.
item,
True))
965 self.
item = event.GetItem()
971 """現在のItemIdからFullPathを生成 980 ret = self.tree.GetItemText(item)
982 print "item name is None!!: error!!" 987 rootitem_id = self.tree.GetRootItem()
988 while (rootitem_id != cur_id):
989 tmp_id = self.tree.GetItemParent(cur_id)
992 name = self.tree.GetItemText(tmp_id)
996 ret = name +
'/' + ret
1001 """現在のItemIdからCategoryの名称を検索 manager にぶら下がっているcategory名を検索
[引数]
cur_id -- 現在のItemID
[戻り値]
ret -- ツリーのFull Path
1002 manager にぶら下がっているcategory名を検索
[引数]
cur_id -- 現在のItemID
[戻り値]
ret -- ツリーのFull Path
1008 ret -- ツリーのFull Path 1016 if self.ItemHasChildren(parent_id):
1017 cur_id, cookie = self.GetFirstChild(parent_id)
1019 for i
in range(self.GetChildrenCount(parent_id,
False) - 1):
1020 cur_name = self.
tree.GetItemText(cur_id)
1021 num = cur_name.find(
'|')
1023 kind = cur_name[num+1:]
1028 if kind ==
'cate_cxt':
1029 ret = cur_name[0:num-1]
1031 cur_id, cookie = self.GetNextChild(cur_id, cookie)
1037 """現在のItemIdからManagerのFullPathを作成 1043 ret -- ツリーのFull Path 1049 rootitem_id = self.
tree.GetRootItem()
1051 while (rootitem_id != cur_id):
1052 cur_name = self.
tree.GetItemText(cur_id)
1053 num = cur_name.find(
'|')
1055 kind = cur_name[num+1:]
1060 if kind ==
'mgr_cxt':
1062 tmp_id = self.
tree.GetItemParent(cur_id)
1068 if kind ==
'mgr_cxt':
1070 for id, cookie
in self.
tree.GetChildrenItemIdList(tmp_id):
1071 cur_name = self.
tree.GetItemText(id)
1072 num = cur_name.find(
'|')
1074 kind = cur_name[num+1:]
1086 ret = self.
tree.GetItemText(cur_id)
1088 while (rootitem_id != cur_id):
1089 tmp_id = self.
tree.GetItemParent(cur_id)
1092 name = self.
tree.GetItemText(tmp_id)
1093 ret = name +
'/' + ret
1099 """DnDスタート
[引数]
event -- Event, 使用していない
[戻り値]
void
1102 event -- Event, 使用していない 1108 item = event.GetItem()
1109 self.
tree.SelectItem(item)
1112 kind = self.
myDict.GetKindToFullpath(fullpath)
1122 data = wx.DataObjectComposite()
1125 textDataObj = wx.TextDataObject(dragText)
1126 data.Add(textDataObj)
1128 drop_source = wx.DropSource(self.
tree)
1129 drop_source.SetData(data)
1130 result = drop_source.DoDragDrop()
1132 if result == wx.DragError:
1134 elif result == wx.DragNone:
1136 elif result == wx.DragCopy:
1137 print "DragCopy: Sucseed" 1138 elif result == wx.DragMove:
1139 print "DragCopy: Sucseed" 1140 elif result == wx.DragCancel:
1146 """DnDエンド
[引数]
event -- Event, 使用していない
[戻り値]
void
1149 event -- Event, 使用していない 1154 item = event.GetItem()
1155 self.
tree.SelectItem(item)
1156 print self.
tree.GetItemText(item)
1162 event -- Event, 使用していない 1167 item = self.
tree.GetSelection()
1168 name = self.
tree.GetItemText(item)
1170 kind = self.
myDict.GetKindToFullpath(fullpath)
1172 ref = self.
myDict.GetObjRefToFullpath(fullpath)
1174 self.
frame.profilepanel.RefreshProfile(ref.get_component_profile())
1183 event -- Event, 使用していない 1188 item = event.GetItem()
1189 name = self.
tree.GetItemText(item)
1194 kind = self.
myDict.GetKindToFullpath(fullpath)
1196 ref = self.
myDict.GetObjRefToFullpath(fullpath)
1198 self.
frame.profilepanel.RefreshProfile(ref.get_component_profile())
1206 """ ネーミングサービス接続ダイアログクラス""" 1208 self, parent, ID, title, text_list,size=wx.DefaultSize, pos=wx.DefaultPosition,
1209 style=wx.DEFAULT_DIALOG_STYLE
1216 title -- ダイアログウインドウタイトル size -- サイズ
pos -- 位置
style -- ダイアログウインドウスタイル
[戻り値]
this
1218 pos -- 位置 style -- ダイアログウインドウスタイル
[戻り値]
this
1219 style -- ダイアログウインドウスタイル
[戻り値]
this
1224 pre = wx.PreDialog()
1225 pre.SetExtraStyle(wx.DIALOG_EX_CONTEXTHELP)
1226 pre.Create(parent, ID, title, pos, size, style)
1230 sizer = wx.BoxSizer(wx.VERTICAL)
1231 box = wx.BoxSizer(wx.HORIZONTAL)
1233 label = wx.StaticText(self, -1,
"NameServer:port ")
1234 label.SetHelpText(
"Name server and port number")
1235 box.Add(label, 0, wx.ALIGN_CENTRE|wx.ALL, 5)
1237 self.
hosttxt = wx.ComboBox(self, -1,
"", (90,50),(160,-1), text_list,wx.CB_DROPDOWN)
1238 self.
hosttxt.SetHelpText(
"Name server and port number")
1239 box.Add(self.
hosttxt, 1, wx.ALIGN_CENTRE|wx.ALL, 5)
1241 sizer.AddSizer(box, 0, wx.GROW|wx.ALIGN_CENTER_VERTICAL|wx.ALL, 5)
1243 line = wx.StaticLine(self, -1, size=(20,-1), style=wx.LI_HORIZONTAL)
1244 sizer.Add(line, 0, wx.GROW|wx.ALIGN_CENTER_VERTICAL|wx.RIGHT|wx.TOP, 5)
1246 box = wx.BoxSizer(wx.HORIZONTAL)
1248 if wx.Platform !=
"__WXMSW__":
1249 btn = wx.ContextHelpButton(self)
1250 box.Add(btn, 0, wx.ALIGN_CENTER|wx.ALL, 5)
1252 btn = wx.Button(self, wx.ID_OK,
" OK ")
1254 btn.SetHelpText(
"The OK button completes the dialog")
1255 box.Add(btn, 0, wx.ALIGN_CENTER|wx.ALL, 5)
1257 btn = wx.Button(self, wx.ID_CANCEL,
" Cancel ")
1258 btn.SetHelpText(
"The Cancel button cnacels the dialog. (Cool, huh?)")
1259 box.Add(btn, 0, wx.ALIGN_CENTER|wx.ALL, 5)
1262 wx.ALIGN_CENTER_HORIZONTAL|wx.ALIGN_CENTER_VERTICAL|wx.ALL,
1265 self.SetSizer(sizer)
1266 self.SetAutoLayout(
True)
1270 """ダイアログウインドウに予め表示するネーミングサーバ名 1273 name_server -- ネーミングサーバ名 1278 self.
hosttxt.SetValue(name_server)
1281 """ダイアログウインドウに入力されたネーミングサーバ名を取得する
[引数]
void
[戻り値]
name_server -- ネーミングサーバ名
1287 name_server -- ネーミングサーバ名 1289 return self.
hosttxt.GetValue()
1292 """ ネーミングサービス接続ヒストリークラス""" 1306 if os.name ==
'posix':
1309 elif os.name ==
'nt':
1321 print "create to history-file:",self.
hist_path 1324 self.
file.write(
'localhost\n')
1333 tmp_hist = self.
file.readlines()
1334 for hist
in tmp_hist:
1352 for n
in range(10,len(self.
history)):
1356 self.
file.write(hist)
1357 self.
file.write(
'\n')
1371 if __name__ ==
'__main__':
1374 run.main([
'', os.path.basename(sys.argv[0])] + sys.argv[1:])
def OnEndEdit(self, event)
def searchCategoryName(self, item)
def OnSelChanged(self, event)
def SetItemByDict(self, dict)
def OnEndDrag(self, event)
def OnItemExpanded(self, event)
def OnActivate(self, event)
def __SetItemRecursive__(self, item_id, dict)
def __init__(self, parent, id, pos, size, style, log)
def SetNameServer(self, name_server)
def OnBeginEdit(self, event)
def GetChildrenItemIdList(self, parent_id)
def OnLeftDClick(self, event)
def makeFullPath(self, item)
def searchManagerPath(self, item)
def OnItemCollapsed(self, event)
void insert(CorbaSequence &seq, SequenceElement &elem, CORBA::ULong index)
Insert the element to the CORBA sequence.
def OnSelChanging(self, event)
def runTest(frame, nb, log)
def OnCompareItems(self, item1, item2)
def OnLeftUp(self, event)
void append(SDOPackage::NVList &dest, const SDOPackage::NVList &src)
Append an element to NVList.
def OnRightUp(self, event)
def OnConnectNSClick(self, event)
def __ListupRecursive__(self, item_id)
def OnBeginDrag(self, event)
def SetNameServer(self, name_server)
def __init__(self, frame, parent, log)
def __init__(self, parent, ID, title, text_list, size=wx.DefaultSize, pos=wx.DefaultPosition, style=wx.DEFAULT_DIALOG_STYLE)
def OnRightClick(self, event)
def __makeDictRecursive__(self, item_id)
def GetChildrenItemNameList(self, parent_id)
def checkDispKind(self, kind)
def SetNSName(self, newName)