Changeset 759
- Timestamp:
- 05/31/07 15:37:07 (6 years ago)
- Location:
- branch/ggpolo
- Files:
-
- 3 modified
-
umitDB/retrieve.py (modified) (2 diffs)
-
umitInventory/tl/youarehere.py (modified) (1 diff)
-
umitInventory/viewer.py (modified) (20 diffs)
Legend:
- Unmodified
- Added
- Removed
-
branch/ggpolo/umitDB/retrieve.py
r755 r759 334 334 Get IPv4 address for a host. 335 335 """ 336 debug("Getting ipv4 address for host %d.." % fk_host)336 debug("Getting ipv4 address for host id %d.." % fk_host) 337 337 338 338 fk_address = self.cursor.execute("SELECT fk_address FROM _host_address \ … … 348 348 349 349 return address[0] 350 351 def get_finish_timestamp_for_scan_from_db(self, scan): 352 """ 353 Get finish timestamp for a scan. 354 """ 355 debug("Getting finish timestamp for scan id %d.." % scan) 356 357 fts = self.cursor.execute("SELECT finish FROM scan WHERE \ 358 pk = ?", (scan, )).fetchone()[0] 359 360 return fts 350 361 351 362 -
branch/ggpolo/umitInventory/tl/youarehere.py
r758 r759 194 194 cr.rectangle(*event.area) 195 195 cr.clip() 196 197 cr.save() 198 cr.rectangle(*event.area) 199 cr.set_source_rgb(1, 1, 1) 200 cr.fill() 201 cr.restore() 202 203 cr.rectangle(0, 0, self.allocation[2], self.allocation[3]) 204 cr.stroke() 196 205 197 206 if self.tl.draw_border and self.__focus: -
branch/ggpolo/umitInventory/viewer.py
r758 r759 97 97 data["root"] = root 98 98 data["host_addr"] = host_addr 99 self.daddy.emit('inventory-activated', data)100 99 101 100 else: … … 110 109 data["root"] = root 111 110 data["host_addr"] = None 112 self.daddy.emit('inventory-activated', data) 111 112 self.daddy.emit('inventory-activated', data) 113 113 114 114 … … 141 141 142 142 self.__layout() 143 144 return 0 145 146 return 1 143 147 144 148 … … 167 171 self.remove(page) 168 172 169 if not len(self.pages): 173 if not len(self.pages): # last page in this inventory was just removed 170 174 self.daddy._delete_inventory_page() 171 175 … … 240 244 border_on_focus=False, 241 245 **get_current_date_for_timeline()) 242 #self.tlyah = tl.youarehere(self.timeline)246 self.tlyah = tl.youarehere(self.timeline) 243 247 self.larrow = tl.arrow(-1, self.timeline) # left arrow (previous date) 244 248 self.rarrow = tl.arrow(1, self.timeline) # right arrow (next date) … … 254 258 # tooltips 255 259 self.tooltips = gtk.Tooltips() 256 #self.tooltips.set_tip(self.uparrow, _("Zoom out one level.")) 257 #self.tooltips.set_tip(self.downarrow, _("Zoom in one level.")) 260 self.tooltips.set_tip(self.tlyah, _("Timeline: You are here!")) 258 261 self.tooltips.set_tip(self.larrow, _("Go to the previous date.")) 259 262 self.tooltips.set_tip(self.rarrow, _("Go to the next date.")) … … 278 281 """ 279 282 if self.tl_dtitle.flags () & gtk.VISIBLE or not event: 280 self.tl_dtitle.set_markup( "<span weight='heavy'>Viewing date: %s \281 </span>" % (self.timeline.title_by_zoom()))283 self.tl_dtitle.set_markup(_("<span weight='heavy'>Viewing: %s \ 284 </span>") % (self.timeline.title_by_zoom())) 282 285 self._tl_verify_zoom() 283 286 … … 342 345 343 346 347 def _set_yahrange(self, min, max): 348 """ 349 Set new TimeLine year range. 350 """ 351 miny = min.year - 1 352 maxy = max.year + 1 353 354 self.timeline.year_range = (miny, maxy) 355 self.timeline.emit('range-change-notify') 356 357 344 358 def _opt_timeline(self, event): 345 359 """ 346 360 Show/Hide TimeLine. 347 361 """ 348 if self.tl_dtitle.flags () & gtk.VISIBLE: 349 self.tl_dtitle.hide() 350 self.timeline.hide() 351 self.larrow.hide() 352 self.rarrow.hide() 353 354 timeline_zi = self.main_action_group.get_action("ZoomIn") 355 timeline_zo = self.main_action_group.get_action("ZoomOut") 356 timeline_zi.set_sensitive(False) 357 timeline_zo.set_sensitive(False) 362 visible = not ((self.tl_dtitle.flags () & gtk.VISIBLE) and 1 or 0) 363 methods = ("hide", "show") 364 365 getattr(self.tl_dtitle, methods[visible])() 366 getattr(self.timeline, methods[visible])() 367 getattr(self.larrow, methods[visible])() 368 getattr(self.rarrow, methods[visible])() 369 370 timeline_zi = self.main_action_group.get_action("ZoomIn") 371 timeline_zo = self.main_action_group.get_action("ZoomOut") 372 timeline_zi.set_sensitive(visible) 373 timeline_zo.set_sensitive(visible) 374 375 if visible: 376 self._tl_verify_zoom() 377 378 379 def _opt_tlyah(self, event): 380 """ 381 Show/Hide "You Are Here!". 382 """ 383 if self.yah_hb.flags () & gtk.VISIBLE: 384 self.yah_hb.hide() 358 385 else: 359 self.tl_dtitle.show() 360 self.timeline.show() 361 self.larrow.show() 362 self.rarrow.show() 363 364 timeline_zi = self.main_action_group.get_action("ZoomIn") 365 timeline_zo = self.main_action_group.get_action("ZoomOut") 366 timeline_zi.set_sensitive(True) 367 timeline_zo.set_sensitive(True) 368 369 self._tl_verify_zoom() 370 386 self.yah_hb.show() 387 371 388 372 389 def _close_current_hosttab(self, event): … … 386 403 def _close_current_invtab(self, event): 387 404 """ 388 Closes current active inventory tab.405 Closes current active inventory notebook. 389 406 """ 390 407 holder = self.invnb.get_nth_page(self.invnb.get_current_page()) … … 401 418 402 419 403 def _invnb_change_cbtn(self, event):404 """405 Enable/Disable close button in Inventory tabs.406 """407 self.invnb_close_btn = not self.invnb_close_btn408 self.emit("invnb-cbtn-changed")409 410 411 420 def _delete_inventory_page(self): 412 421 """ 413 Removed last page from an Inventory notebook. 422 Removed last page from an Inventory notebook, now remove the Inventory 423 notebook. 414 424 """ 415 425 cur_page = self.invnb.get_current_page() … … 429 439 title = data["root"] 430 440 431 if not data["host_addr"]: # inventory activated 432 if not title in self.invnbpages_titles: 433 newinvnb = InventoryNB(self, title, True) 434 self.invnb.append_page(newinvnb, gtk.Label(_("%s" % title))) 441 if not title in self.invnbpages_titles: 442 newinvnb = InventoryNB(self, title, not data["host_addr"]) 443 self.invnb.append_page(newinvnb, gtk.Label(_("%s" % title))) 435 444 436 self.invnbpages_titles.append(title) 437 self.invnbpages_objects.append(newinvnb) 445 self.invnbpages_titles.append(title) 446 self.invnbpages_objects.append(newinvnb) 447 448 if data["host_addr"]: # host activated 449 newinvnb.append_host(data["host_addr"]) 450 451 err = 0 452 else: 453 p = self.invnbpages_objects[self.invnbpages_titles.index(title)] 454 if data["host_addr"]: # host activated 455 err = p.append_host(data["host_addr"]) 456 else: # inventory activated 457 err = p.append_inv() 458 459 if not err: # tab wasn't in inventory tab 460 print "inv: %s" % title 461 462 if data["host_addr"]: 463 print "load %s data" % data["host_addr"] 438 464 else: 439 p = self.invnbpages_objects[self.invnbpages_titles.index(title)] 440 p.append_inv() 465 print "load inv info" 441 466 442 else: # host activated 443 if not title in self.invnbpages_titles: 444 newinvnb = InventoryNB(self, title) 445 self.invnb.append_page(newinvnb, gtk.Label(_("%s" % title))) 446 447 self.invnbpages_titles.append(title) 448 self.invnbpages_objects.append(newinvnb) 449 450 newinvnb.append_host(data["host_addr"]) 451 err = 0 452 else: 453 p = self.invnbpages_objects[self.invnbpages_titles.index(title)] 454 err = p.append_host(data["host_addr"]) 455 456 if not err: # host wasn't in inventory tab 457 pass 458 # load data 459 # ... 460 # 461 # ... 467 # load data 468 # ... 469 # 470 # ... 462 471 463 472 … … 467 476 """ 468 477 self.addresses = { } 478 timestamps = [ ] 469 479 470 480 tr = self.invtree.treestore … … 476 486 # retrieve scans id for each inventory 477 487 for scan in self.invdb.get_scans_ids_for_inventory(invid): 488 489 # retrieve scan finish timestamp 490 fts = self.invdb.get_finish_timestamp_for_scan_from_db(scan[0]) 491 timestamps.append(fts) 478 492 479 493 # retrieve hosts id for each scan … … 499 513 tr.append(root, ['%s' % addr]) 500 514 501 515 # Adjusts timeline range based on min and max timestamps from scans. 516 self._set_yahrange(min(timestamps), max(timestamps)) 517 502 518 self.invtree.treeview.expand_all() 503 519 self.invtree.tcolumn.set_title("My Inventories (%d)" % len(tr)) … … 561 577 self._opt_timeline, 562 578 True), 579 ("ShowYAH", None, 580 _("Show \"You Are Here!\""), None, 581 _("Show/Hide \"You Are Here!\""), 582 self._opt_tlyah, 583 True), 563 584 # Edit/Notebooks 564 585 ("TabCloseBtn", None, … … 579 600 <menu action='Edit'> 580 601 <menu action='TimeLine'> 581 <menuitem action='ShowTimeline' />582 602 <menuitem action='ZoomIn' /> 583 603 <menuitem action='ZoomOut' /> 604 <menuitem action='ShowTimeline' /> 605 <menuitem action='ShowYAH' /> 584 606 </menu> 585 607 <menu action='ToolbarOpt'> … … 623 645 Set window properties. 624 646 """ 625 self.set_title(_("UMIT Network Inventory 0.0.2 "))647 self.set_title(_("UMIT Network Inventory 0.0.2.2")) 626 648 self.maximize() 627 649 … … 645 667 main_vbox.pack_start(toolbar, False, False, 0) 646 668 647 main_hpaned.add1(self.invtree) 669 left_pane_box = gtk.VBox() 670 #left_pane_box.set_border_width(3) 671 left_pane_box.pack_start(self.invtree, True, True, 0) 672 673 self.yah_hb = gtk.HandleBox() 674 self.yah_hb.add(self.tlyah) 675 self.yah_hb.set_handle_position(gtk.POS_TOP) 676 left_pane_box.pack_end(self.yah_hb, False, False, 0) 677 678 main_hpaned.add1(left_pane_box) 648 679 main_hpaned.add2(nb_tl_hpaned) 649 680 650 681 # align left and right arrow with timeline height 651 #tl_and_info = gtk.VBox()652 653 654 682 tlbox2 = gtk.HBox() 655 #tlbox2.set_border_width(6)656 683 align = gtk.Alignment(0, 1, 0, 0.5) 657 684 align.add(self.larrow) … … 665 692 align.add(self.rarrow) 666 693 tlbox2.pack_end(align, False, False, 6) 667 #tl_and_info.pack_start(tlbox, False, False, 6)668 694 669 695 tlbox.pack_start(tlbox2, True, True, 0) … … 673 699 nbscroll.set_policy(gtk.POLICY_AUTOMATIC, gtk.POLICY_AUTOMATIC) 674 700 nbscroll.add_with_viewport(self.invnb) 675 #box3 = gtk.VBox()676 677 # UNCOMMENT!678 #box3.pack_start(self.tltitle, False, False, 6)679 #box3.pack_start(tlbox, False, False, 6)680 681 # up arrow, title, down arrow682 #align = gtk.Alignment(0.5, 0.5, 0, 0)683 #align.add(self.tltitle)684 685 #box3.add(nbscroll)686 687 #tlbox2 = gtk.VBox()688 #align = gtk.Alignment(1, 0, 0.4, 0)689 #align.add(self.uparrow)690 #tlbox2.pack_start(align, False, False, 6)691 692 #tlalign = gtk.Alignment(1, 0, 0.5, 0)693 #tlalign.add(self.timeline)694 #tlbox2.pack_start(tlalign, False, False, 0)695 696 #align = gtk.Alignment(1, 0, 0.4, 0)697 #align.add(self.downarrow)698 #tlbox2.pack_end(align, False, False, 6)699 700 #yahbox.pack_start(self.tltitle, False, False, 0)701 #yahbox.pack_start(self.tlyah, False, False, 0)702 #yahbox.pack_start(tlbox2, False, False, 0)703 701 nb_tl_hpaned.pack1(nbscroll, True, False) 704 #nb_tl_hpaned.pack2(yahbox, False, False) 705 706 707 #secondary_vbox.pack_start(tlbox, False, False, 6) 708 #secondary_vbox.pack_start(hpaned, True, True, 0) 702 709 703 main_vbox.pack_start(self.tl_dtitle, False, False, 6) 710 704 main_vbox.pack_start(tlbox, False, False, 0) 711 #main_vbox.pack_start(box3, False, False, 0)712 705 main_vbox.pack_start(main_hpaned, True, True, 0) 713 714 #main_vbox.pack_start(secondary_vbox, True, True, 0)715 716 706 main_vbox.pack_end(self.statusbar, False, False, 0) 717 707
