Skip to main content

An extension program to curses that offers option menus, message boxes, file dialogues and more

Project description

Curses Plus

Extension library to curses

How To Install

Use pip3 install cursesplus on Linux or py -m pip install cursesplus on Windows

SPECIAL INSTRUCTIONS FOR WINDOWS

For Windows you need to also install windows-curses or related program to provide the basic curses functionality

What's New?

3.16.5

  • Fix critical bug in input

  • Textview is now more colourful

3.16.4

  • Add the ability to do home, end, pgup, and pgdown on textview

NOTICE! 3.x - Breaking Changes

The following changes likely require changes in your code

  • Move filline, showcursor, and hidecursor to a new module called utils.

  • Fix spelling issue, utils.filline is now utils.fill_line

  • Change displayops to optionmenu. Please refactor all calls from displayops() to optionmenu(): No other changes are required

  • Remove legacy function showerror. Use messagebox.showerror as a replacement

  • Remove legacy function askyesno_old. Use messagebox.askyesno as a replacement

  • Combine displaymsg and displaymsgnodelay into one function

  • Existing displaymsgnodelay calls can be changed to displaymsg(stdscr,[messages],False), so change the flag wait_for_keypress to false

  • Remove redundant american function set_color. You can either use the (correct) spelling set_colour or you can not use this library.

Documentation

transitions.py

transitions contains many transitions to add animations to your program

__exec(func,args)

NOTE: THIS IS AN INTERNAL FUNCTION, IT IS NOT MEANT TO BE USED BY THE COMMON USER

This executes func(args)

horizontal_bars(stdscr,func_to_call=None,args=(),speed=1)

This is a replacement function to old's type zero. It fills the screen from the top down with horizontal white bars. It then replaces them with black bars in the same configuration.

  • stdscr is a curses window object

  • func_to_call is a function. If it is set to none, no function is called

  • args is a tuple. The tuple will be passed to the function as arguments

  • speed is an int. A higher value increases the animation speed. A lower value (0 - 1) makes it slower. If you set speed to 0, the program will crash.

random_blocks(stdscr,func_to_call=None,args=(),speed=1)

This is a replacement for old's type one transition. It fills random characters of the screen with blocks until the whole screen is covered, then it removes it in the same fashion.

  • stdscr is a curses window object

  • func_to_call is a function. If it is set to none, no function is called

  • args is a tuple. The tuple will be passed to the function as arguments

  • speed is an int. A higher value increases the animation speed. A lower value (0 - 1) makes it slower. If you set speed to 0, the program will crash.

vertical_bars(stdscr,func_to_call=None,args=(),speed=1)

This is an all new transition. It functions like horizontal bars except they are vertical and go left to right.

  • stdscr is a curses window object

  • func_to_call is a function. If it is set to none, no function is called

  • args is a tuple. The tuple will be passed to the function as arguments

  • speed is an int. A higher value increases the animation speed. A lower value (0 - 1) makes it slower. If you set speed to 0, the program will crash.

utils.py

Utils.py Contain a series of non-ui utility functions. By non-ui I mean that it does not show a screen and it is non-interactive. It is meant to enhance the creation of custom menus.

fill_line(stdscr,line,colour)

This function fills row line with the colour colour.

  • stdscr is a curses window object

  • line is an int. It is the row number you wish to fill in

  • colour is a curses colour. Use cursesplus.set_colour() for this

hidecursor()

This function hides the console cursor

showcursor()

This function shows the console cursor

constants.py

constants.py contains a series of constants such as colours and special lines.

** This documentation is not yet complete. There are many more features than this **

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cursesplus-3.16.5.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

cursesplus-3.16.5-py3-none-any.whl (19.0 kB view details)

Uploaded Python 3

File details

Details for the file cursesplus-3.16.5.tar.gz.

File metadata

  • Download URL: cursesplus-3.16.5.tar.gz
  • Upload date:
  • Size: 19.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for cursesplus-3.16.5.tar.gz
Algorithm Hash digest
SHA256 8681551b551ab921634f8b777cf1a9fed9a1204b6636f69bc8fb41ffb9cb3acb
MD5 60d395863aa265124402a207beeddf43
BLAKE2b-256 fb82c0058ed7195ff360109ef2b8b518e52e40c211e9c174e25480e50fbd4c7d

See more details on using hashes here.

File details

Details for the file cursesplus-3.16.5-py3-none-any.whl.

File metadata

  • Download URL: cursesplus-3.16.5-py3-none-any.whl
  • Upload date:
  • Size: 19.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for cursesplus-3.16.5-py3-none-any.whl
Algorithm Hash digest
SHA256 08e359ff75582d119ce29af886fb6daad1a55bc9fb2afb6687f28198896398d3
MD5 a95b4448f1125accc4131bb67557b201
BLAKE2b-256 db359653e5ec74ec324a9f4dccce581f6949b0130fef217c4798cd955396103f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page