summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--python-menu.spec315
-rw-r--r--sources1
3 files changed, 317 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..bdff751 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/Menu-3.2.2.tar.gz
diff --git a/python-menu.spec b/python-menu.spec
new file mode 100644
index 0000000..a8050b9
--- /dev/null
+++ b/python-menu.spec
@@ -0,0 +1,315 @@
+%global _empty_manifest_terminate_build 0
+Name: python-Menu
+Version: 3.2.2
+Release: 1
+Summary: Easily create command-line menus
+License: LICENSE.txt
+URL: https://github.com/drich14/Menu/
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/a1/57/66755041c5fa34386869bb4dda9d79938ef1b06b57360c2e0ccbb81d5b27/Menu-3.2.2.tar.gz
+BuildArch: noarch
+
+
+%description
+# Menu
+
+Easily create command-line menus.
+
+## Install
+
+ pip install Menu
+
+**Note:** Use with Python 2 requires the [future](https://pypi.org/project/future/) package to be installed.
+
+## Create the Menu
+
+The Menu constructor arguments are all optional. The arguments are options, title, message, prompt, and refresh. Options is a list of tuples consisting of a name and a handler. Refresh is a handler called before showing the menu.
+
+ Menu() # empty menu, will close upon opening
+ Menu(options=[("Option Name", optionHandler)]) # customize the options
+ Menu(options=[("Option Name", optionHandler, {'key': val})]) # add kwargs to option handlers
+ Menu(title="Menu title") # customize the title
+ Menu(message="Message text") # customize the message, disabled by default
+ Menu(prompt=">") # customize the user input prompt
+ Menu(refresh=refreshHandler) # customize the refresh handler
+
+## Open the Menu
+
+ menu = Menu()
+ menu.open()
+
+## Close the Menu
+
+from the instance after creating the menu
+
+ menu = Menu()
+ menu.close()
+
+or use the static method before creating the menu
+
+ Menu(options = [("Close", Menu.CLOSE)])
+
+## Edit the menu
+
+ menu = Menu()
+ menu.set_options([("new option name", newOptionHandler)])
+ menu.set_title("new title")
+ menu.set_message("new message")
+ menu.set_prompt("new prompt")
+
+## Create a Submenu
+
+ main = Menu(title = "Main Menu")
+ sub = Menu(title = "Submenu")
+ main.set_options([
+ ("Open submenu", sub.open),
+ ("Close main menu", main.close)
+ ])
+ sub.set_options([
+ ("Return to main menu", sub.close)
+ ])
+ main.open()
+
+## Example
+
+[example.py](test/example.py)
+
+## Development
+
+Symlink package to immediately see changes locally
+
+ $ pip install -e .
+
+Run the tests
+
+ $ python test/tests.py
+
+Build
+
+ $ python setup.py sdist
+
+**Note:** Might need to login first with `python setup.py register`
+
+Publish to PyPI
+
+ $ twine upload dist/*
+
+%package -n python3-Menu
+Summary: Easily create command-line menus
+Provides: python-Menu
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-Menu
+# Menu
+
+Easily create command-line menus.
+
+## Install
+
+ pip install Menu
+
+**Note:** Use with Python 2 requires the [future](https://pypi.org/project/future/) package to be installed.
+
+## Create the Menu
+
+The Menu constructor arguments are all optional. The arguments are options, title, message, prompt, and refresh. Options is a list of tuples consisting of a name and a handler. Refresh is a handler called before showing the menu.
+
+ Menu() # empty menu, will close upon opening
+ Menu(options=[("Option Name", optionHandler)]) # customize the options
+ Menu(options=[("Option Name", optionHandler, {'key': val})]) # add kwargs to option handlers
+ Menu(title="Menu title") # customize the title
+ Menu(message="Message text") # customize the message, disabled by default
+ Menu(prompt=">") # customize the user input prompt
+ Menu(refresh=refreshHandler) # customize the refresh handler
+
+## Open the Menu
+
+ menu = Menu()
+ menu.open()
+
+## Close the Menu
+
+from the instance after creating the menu
+
+ menu = Menu()
+ menu.close()
+
+or use the static method before creating the menu
+
+ Menu(options = [("Close", Menu.CLOSE)])
+
+## Edit the menu
+
+ menu = Menu()
+ menu.set_options([("new option name", newOptionHandler)])
+ menu.set_title("new title")
+ menu.set_message("new message")
+ menu.set_prompt("new prompt")
+
+## Create a Submenu
+
+ main = Menu(title = "Main Menu")
+ sub = Menu(title = "Submenu")
+ main.set_options([
+ ("Open submenu", sub.open),
+ ("Close main menu", main.close)
+ ])
+ sub.set_options([
+ ("Return to main menu", sub.close)
+ ])
+ main.open()
+
+## Example
+
+[example.py](test/example.py)
+
+## Development
+
+Symlink package to immediately see changes locally
+
+ $ pip install -e .
+
+Run the tests
+
+ $ python test/tests.py
+
+Build
+
+ $ python setup.py sdist
+
+**Note:** Might need to login first with `python setup.py register`
+
+Publish to PyPI
+
+ $ twine upload dist/*
+
+%package help
+Summary: Development documents and examples for Menu
+Provides: python3-Menu-doc
+%description help
+# Menu
+
+Easily create command-line menus.
+
+## Install
+
+ pip install Menu
+
+**Note:** Use with Python 2 requires the [future](https://pypi.org/project/future/) package to be installed.
+
+## Create the Menu
+
+The Menu constructor arguments are all optional. The arguments are options, title, message, prompt, and refresh. Options is a list of tuples consisting of a name and a handler. Refresh is a handler called before showing the menu.
+
+ Menu() # empty menu, will close upon opening
+ Menu(options=[("Option Name", optionHandler)]) # customize the options
+ Menu(options=[("Option Name", optionHandler, {'key': val})]) # add kwargs to option handlers
+ Menu(title="Menu title") # customize the title
+ Menu(message="Message text") # customize the message, disabled by default
+ Menu(prompt=">") # customize the user input prompt
+ Menu(refresh=refreshHandler) # customize the refresh handler
+
+## Open the Menu
+
+ menu = Menu()
+ menu.open()
+
+## Close the Menu
+
+from the instance after creating the menu
+
+ menu = Menu()
+ menu.close()
+
+or use the static method before creating the menu
+
+ Menu(options = [("Close", Menu.CLOSE)])
+
+## Edit the menu
+
+ menu = Menu()
+ menu.set_options([("new option name", newOptionHandler)])
+ menu.set_title("new title")
+ menu.set_message("new message")
+ menu.set_prompt("new prompt")
+
+## Create a Submenu
+
+ main = Menu(title = "Main Menu")
+ sub = Menu(title = "Submenu")
+ main.set_options([
+ ("Open submenu", sub.open),
+ ("Close main menu", main.close)
+ ])
+ sub.set_options([
+ ("Return to main menu", sub.close)
+ ])
+ main.open()
+
+## Example
+
+[example.py](test/example.py)
+
+## Development
+
+Symlink package to immediately see changes locally
+
+ $ pip install -e .
+
+Run the tests
+
+ $ python test/tests.py
+
+Build
+
+ $ python setup.py sdist
+
+**Note:** Might need to login first with `python setup.py register`
+
+Publish to PyPI
+
+ $ twine upload dist/*
+
+%prep
+%autosetup -n Menu-3.2.2
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-Menu -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon May 29 2023 Python_Bot <Python_Bot@openeuler.org> - 3.2.2-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..3399c7f
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+e6b9df1edba4fce0f414a2a704e882dc Menu-3.2.2.tar.gz