def addCityMenu(self, target): itemC = gtk.MenuItem("_City", True) itemC.show() target.append(itemC) c = gtk.Menu() c.show() itemC.set_submenu(c) itemCN = gtk.MenuItem("_New", True) c.append(itemCN) itemCN.show() itemCN.connect("activate", getFileid, self.tabs, mkCity, "city") itemCL = gtk.MenuItem("_Load", True) c.append(itemCL) itemCL.show() cl = gtk.Menu() cl.show() itemCL.set_submenu(cl) cities = sorted(worldList["c"]) num = len(cities) every = num cols = 1 if num > 20: cols = int(floor(num / 20)) + 1 every = int(num / cols) - 1 pos = 0 countitem = gtk.MenuItem("Total Entries: %d" % num) cl.append(countitem) countitem.show() addCitySubmenu(self.tabs, cl, cities[pos : pos + every]) if num > every: pos += every lsm = addLoadSubmenuItem(cl, num - pos) for i in range(cols): addCitySubmenu(self.tabs, lsm, cities[pos : pos + every]) pos += every if num > pos + 1: lsm = addLoadSubmenuItem(lsm, num - pos) elif num == pos: addCitySubmenu(self.tabs, lsm, cities[-1:])
def addPersonMenu(self,target): itemP = gtk.MenuItem("_Person",True) itemP.show() target.append(itemP) p = gtk.Menu() p.show() itemP.set_submenu(p) itemPN = gtk.MenuItem("_New",True) p.append(itemPN) itemPN.show() itemPN.connect("activate",getFileid,self.tabs,mkPerson,"person") itemPL = gtk.MenuItem("_Load",True) p.append(itemPL) itemPL.show() pl = gtk.Menu() pl.show() itemPL.set_submenu(pl) persons = sorted(worldList['p']) num = len(persons) every = num cols = 1 if num > 20: cols = int(floor(num/20)) + 1 every = int(num / cols) - 1 pos = 0 countitem = gtk.MenuItem("Total Entries: " + str(num)) pl.append(countitem) countitem.show() addPersonSubmenu(self.tabs,pl,persons[pos:pos + every]) if num > every: pos += every lsm = addLoadSubmenuItem(pl, num - pos) for i in range(cols): addPersonSubmenu(self.tabs,lsm,persons[pos:pos + every]) pos += every if num > pos + 1: lsm = addLoadSubmenuItem(lsm, num - pos) elif num == pos: addPersonSubmenu(self.tabs,lsm,persons[-1:])
def addPlaceMenu(self,target): itemL = gtk.MenuItem("_Landmark",True) itemL.show() target.append(itemL) l = gtk.Menu() l.show() itemL.set_submenu(l) itemLN = gtk.MenuItem("_New",True) l.append(itemLN) itemLN.show() itemLN.connect("activate",getFileid,self.tabs,mkPlace,"place") itemLL = gtk.MenuItem("_Load",True) l.append(itemLL) itemLL.show() ll = gtk.Menu() ll.show() itemLL.set_submenu(ll) places = sorted(worldList['l']) num = len(places) every = num cols = 1 if num > 20: cols = int(floor(num/20)) + 1 every = int(num / cols) - 1 pos = 0 countitem = gtk.MenuItem("Total Entries: " + str(num)) ll.append(countitem) countitem.show() addPlaceSubmenu(self.tabs,ll,places[pos:pos + every]) if num > every: pos += every lsm = addLoadSubmenuItem(ll, num - pos) for i in range(cols): addPlaceSubmenu(self.tabs,lsm,places[pos:pos + every]) pos += every if num > pos + 1: lsm = addLoadSubmenuItem(lsm, num - pos) elif num == pos: addPlaceSubmenu(self.tabs,lsm,places[-1:])
def addStateMenu(self,target): itemS = gtk.MenuItem("_State",True) itemS.show() target.append(itemS) s = gtk.Menu() s.show() itemS.set_submenu(s) itemSN = gtk.MenuItem("_New",True) s.append(itemSN) itemSN.show() itemSN.connect("activate",getFileid,self.tabs,mkState,"state") itemSL = gtk.MenuItem("_Load",True) s.append(itemSL) itemSL.show() sl = gtk.Menu() sl.show() itemSL.set_submenu(sl) states = sorted(worldList['s']) num = len(states) every = num cols = 1 if num > 20: cols = int(floor(num/20)) + 1 every = int(num / cols) - 1 pos = 0 countitem = gtk.MenuItem("Total Entries: " + str(num)) sl.append(countitem) countitem.show() addStateSubmenu(self.tabs,sl,states[pos:pos + every]) if num > every: pos += every lsm = addLoadSubmenuItem(sl, num - pos) for i in range(cols): addStateSubmenu(self.tabs,lsm,states[pos:pos + every]) pos += every if num > pos + 1: lsm = addLoadSubmenuItem(lsm, num - pos) elif num == pos: addStateSubmenu(self.tabs,lsm,states[-1:])