From 59fc72d0c1e03ba0e2ac4a25ff61f2efeddf8822 Mon Sep 17 00:00:00 2001 From: Lyx Date: Sat, 15 Mar 2025 10:52:58 +0100 Subject: [PATCH] Added a search feature --- __pycache__/functions.cpython-312.pyc | Bin 0 -> 1468 bytes __pycache__/possistions.cpython-312.pyc | Bin 0 -> 540 bytes main.py | 38 ++++++++++++++++++++++-- 3 files changed, 36 insertions(+), 2 deletions(-) create mode 100644 __pycache__/functions.cpython-312.pyc create mode 100644 __pycache__/possistions.cpython-312.pyc diff --git a/__pycache__/functions.cpython-312.pyc b/__pycache__/functions.cpython-312.pyc new file mode 100644 index 0000000000000000000000000000000000000000..6c76686d5529650b72fd736de8bd88ffbf84f5e8 GIT binary patch literal 1468 zcmZ`(O=ufO6rR~#?XLc!*iJU_UmD`3ScMka(7zzN*p6`%{}dXBU||r8X5vVec9oe` z9F-NAl7rk7YSV*V2=vyvIENf_Ow&uC7prcmnY1*}UUCz$3#F&NSzB^k=!1RxX5ROH zX6C*3Lp&ZqK=LP|uN??;GT3M0_R59{QrnO{}&H4^HS7J9&qfSUmi2RtHqHROl#VQG1oNR*&f zF8cpqV#H`+3`ZlVsuQDX__}Y9_+8~P>OXQx6~Q5 zfRjh2MC8il(T_4iW1~~kA4jfm%3d3qqmBpfWn8B=p^QI!48BC9#M}~PUXF4R@p459 zP>`9tLZK1cvxSj!xMw?_FbMVRT!D*(onslO0Wh?^GNa;HiP3DXl=Eya=Qc286BlQ%m7T0SD}TLI5mCrEb9GP2 zUIK5rj8O-+i2l?PwgKulLlgx9{Jm zTkk!1rEU#9OxCT5$1`>7YHjSP)w?>sGQWA|-2Le->wIl&yQlA~@h`_W`v)K5t)Ahf z$wmxyoTwSwCp&BLZL4>^SdXSQwbb9can#m%_tnkB+2=@suvV8e?)`MK5rXAEyaP`4 zU3ADC?nRG!JBH7xkKV+%xJ>IeW&YcgJ@D4yw(qzZs$K(+Mzd;0{@6EQLWP{fY+<%LhbRNVLW~%6ta)Ayq m7%VW?AZRzRhKezMf)c-@?%&X%jv%gC_0?jQ<4;Sdx)i1QgNF%P&t(EH2SE(lgLc&d)8#Ni9jW&q*w? zHMP{UG&VL?%gN8PH8jvOH#9RN+blC 0: selected -= 1 elif key == readchar.key.DOWN or key == 'j' and selected < len(cities) - 1: @@ -27,8 +27,42 @@ def selectCity(): return cities[selected] else: sys.exit() + elif key == "/": + search_mode = True + search_query = "" + all_cities = cities # Keep original city list + filtered_cities = all_cities # Start with all cities + while search_mode: + clear() + print(f"Search mode ON | Query: {search_query}") + + # Show filtered results + for city in filtered_cities: + print(" " + city) + key = readchar.readkey() + + if key == readchar.key.ESC: # Exit search mode + search_mode = False + filtered_cities = all_cities # Reset filter + search_query = "" + + elif key == readchar.key.BACKSPACE and len(search_query) > 0: # Delete last character + search_query = search_query[:-1] + + elif key == readchar.key.ENTER: # Exit search mode + cities = filtered_cities + search_mode = False + else: + search_query += key # Append new character + + # Update filtered cities based on search query + filtered_cities = [city for city in all_cities if search_query.lower() in city.lower()] + filtered_cities.append("Exit") + + + # Call the function to display and select a city selected_city = selectCity()