Code Monkey home page Code Monkey logo

tui's Introduction

TUI project

TUI (text user interface) library

The story

Back in 2000 when I was working for one local book store we had a legacy backoffice written in C++ for DOS. The foundation was written by my boss several years before. The code style was messy but the most painful part was the user interface. I could not stand the dumb way the UI was programmed (mostly by copy-pasting blocks of existing code) so I decided to make it my way. I tried using Turbo Vision but it was too heavy for our needs and used too much RAM and remember we were using only 640 Kb of convenient memory for running the program itself plus extended memory for the data. Also I was keen to try to develop something similar myself. So I came out with this TUI library which I used for about a year until I left the company.

The demo program (TUIDEMO.EXE) only uses 69 Kb of memory and demonstrates some of the most useful components -- open file dialog, message box, input box, calendar, different lists and a progress bar which we were using MUCH those days :) Also, please note the "graphic" mouse pointer in text mode, rarely seen in UI back then.

Screenshot

TUI demo

Binary

The TUIDEMO.EXE is already built and can be run in DOSBox. Please keep the TUINOTE.TXT file besides, it is loaded at startup.

Build

To build TUI you need to install Borland C++ 3.1 compiler. You may install it anywhere convenient (for example in C:\TOOLS\BC) and then you should create a mapped drive H: using subst command

subst H: C:\TOOLS

so that you have a bcc binary under H:\BC\BIN and standard library in H:\BC\LIB.

Now just run BUILD.BAT with a memory model of your choice. Use large model if in doubt.

BUILD.BAT l

This will build a TUIDEMO.EXE from sources.

Licence

MIT

tui's People

Contributors

bhmj avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.