def main(stdscr): branch_data = branch.get_branches() branch_names = branch.get_branch_names() (height, width) = branch.get_branch_dimensions(branch_data) curses.start_color() curses.curs_set(0) curses.init_pair(1, curses.COLOR_RED, curses.COLOR_WHITE) border_bounds = 2 branch_layout = (curses.LINES - 1, curses.COLS, 1, 0) # 1 for the nav height itself nav_layout = (1, 1, curses.LINES, 0) prompt_layout = (5, curses.COLS, 0, 0) prompt_option = prompt.Prompt(prompt_layout) # Layout is (height, width, y_coord, x_coord) branch_list = listing.Listing(branch_layout, branch_data, branch_names) branch_list.set_prompt(prompt_option) stdscr.addstr(0, 0, ' Press enter to delete a local branch') stdscr.refresh() # Nav nav = navigator.Navigator(nav_layout, { 's': { 'window': branch_list }, 'd': { 'window': prompt_option } }, stdscr)
def __init__(self, *args, **kwargs): super(NavigatorBot, self).__init__(*args, **kwargs) user_id = args[0][2] self._navigator = None self._editor = None self._is_table_view = True global global_config global global_files_tree_generators if user_id not in global_config: return shared_directories = global_config[user_id] navigator = nav.Navigator(page_size=10) for sd in shared_directories: navigator.add_dir_to_root( dir=global_files_tree_generators[sd.path].root_dir, alias=sd.alias) self._navigator = navigator self._editor = None logging.info("NavigatorBot launched: {0}".format(user_id))
def test_init_1(self): page_size = 7 paths = ["path_1", "path_2"] navigator = n.Navigator(page_size=page_size) for path in paths: root, _ = create_get_files_tree_func(root_path=path) navigator.add_dir_to_root(root, path) self.assertEqual(len(navigator.main_root.dirs), len(paths))
def test_get_current_alias_path(self): paths = ["path_1", "path_2"] navigator = n.Navigator(page_size=5) for path in paths: root, _ = create_get_files_tree_func(root_path=path) navigator.add_dir_to_root(root, path + "_alias") navigator.set_dir("path_1_alias") navigator.set_dir("dir_1") navigator.set_dir("dir_3") path = navigator.get_current_alias_path() self.assertEqual(path, str(os.path.join("path_1_alias", "dir_1", "dir_3")))
def test_set_parent_dir_2(self): page_size = 7 path_1 = "path_1" path_2 = "path_2" paths = [path_1, path_2] navigator = n.Navigator(page_size=page_size) for path in paths: root, _ = create_get_files_tree_func(root_path=path) navigator.add_dir_to_root(root, path) navigator.set_parent_dir() self.assertEqual(navigator.current_dir.name, "/")
def test_get_file(self): page_size = 7 path_1 = "path_1" path_2 = "path_2" paths = [path_1, path_2] navigator = n.Navigator(page_size=page_size) for path in paths: root, _ = create_get_files_tree_func(root_path=path, depth=4) navigator.add_dir_to_root(root, path) navigator.set_dir(path_1) file = navigator.get_file("file_1") self.assertEqual(file.name, "file_1")
def test_pagination(self): page_size = 7 path_1 = "path_1" path_2 = "path_2" dirs_num = 5 file_num = 5 depth = 2 paths = [path_1, path_2] navigator = n.Navigator(page_size=page_size) for path in paths: root, _ = create_get_files_tree_func(root_path=path, dirs_num=dirs_num, files_num=file_num, depth=depth) navigator.add_dir_to_root(root, path) self.assertEqual(navigator.pagination.total_size, 2) navigator.set_dir(path_1) self.assertEqual(navigator.pagination.total_size, (dirs_num + file_num)) navigator.set_parent_dir() self.assertEqual(navigator.pagination.total_size, 2)
import navigator intro = """ _____ _ |_ _| | | | | _ __ | |_ _ __ ___ | | | '_ \| __| '__/ _ \ _| |_| | | | |_| | | (_) | |_____|_| |_|\__|_| \___/ """ nav = navigator.Navigator(intro=intro) @nav.route('Add', "Add 1 to 3 and print the result") def add(): navigator.ui.text_success(1 + 3) @nav.route('Sub', "Subtract 3 from 1 and print the result") def sub(): navigator.ui.text_success(1 - 3) assistant = navigator.Assistant("Powers", "Stuff for powers", "Select one:") nav.register_assistant(assistant) @assistant.route('Square', "Squares the number 3 and prints the result") def square(): navigator.ui.text_success(3**2)
#The main file -> TO RUN THIS PROJECT run this file from robolab_turtlebot import Turtlebot, Rate import navigator robot = Turtlebot(rgb=True, depth=True) navigator = navigator.Navigator(robot) Rate(1100).sleep() navigator.scanForCones() navigator.toppleRedCone()
def setUp(self): self.test_nav = navigator.Navigator(message="")