Sponsored Content
Full Discussion: Ncurses status bar
Top Forums UNIX for Beginners Questions & Answers Ncurses status bar Post 303037444 by Corona688 on Thursday 1st of August 2019 01:03:38 PM
Old 08-01-2019
Mordac is being ridiculous. It's a direct link to some code.

Code:
void startup(void)
{

   printf("\033(U");  /* set to ibm character set */
   initscr();         /* initialize ncurses */
   start_color();
   COLOR_PAIRS = 72; /* needed to fix the 64 color pair bug */
   cbreak(); //
   raw();
   noecho();         /* don't echo input */
   nonl();
   use_sbar = (LINES > 24) ? 1 : 0;  /* only use statbar on big terms */
   win = newwin(screenlen, COLS, 0, 0);  /* configurable later? */
   wrefresh(win);

   if (win == NULL)
   {
       printf("\nError creating main window!\n");
       exit(2);
   }
   scrollok(win, TRUE);
   nodelay(win, TRUE);
   keypad(win, TRUE);

   if (use_sbar)
   {
       statusbar = newwin(1, COLS, screenlen, 0);
       if (statusbar == NULL)
       {
           delwin(win);
           endwin();
           printf("\nError creating status bar window!\n");
           exit(3);
       }
   }
   dos_lf = 1;      /* emulate dos linefeeds for bbs compatibility */
   stage = 0;
   binary_mode = 0;

   /* option defaults */
   did_SGA = 0;
   did_TERM = 0;
   did_BIN = 0;
   ansi = 1;
   rz_active = 0;
}

void draw_statusbar(void)
{
   int i;
   char sbar[79];
//  wattrset(statusbar, crt2curses(0x1F));
   wattrset(statusbar, crt2curses(0x19));
//  wcolor_set(statusbar, crt2curses(0x1F), NULL);
   wcolor_set(statusbar, crt2curses(0x19), NULL);
   sprintf(sbar, " %s %s", appname, version);
   for (i = strlen(sbar); i < 80; i++) sbar[i] = 32;
   mvwaddstr(statusbar, 0,0, sbar);
   touchwin(statusbar);
   wrefresh(statusbar);
   touchwin(win);
   textattr(0x07);
   wrefresh(win);
}

But that's one reason it's best to post here instead of linking.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Couldn't open status file /var/samba/STATUS.LCK

I believe i have most of samba configured right but i get this error each time time try to run it. I was given suggestion that i touch the file, i did, but i still cannot rid myself of this error. Any suggestions (2 Replies)
Discussion started by: macdonto
2 Replies

2. Programming

ncurses -> the best way to use menus

hello there, i'm exploring the curses lib and i'm having some trouble with "defining a style". to clarify: i'm creating a menu driven app and i've been thinking what's the best way to use menus: make global vars (not my favourite), creating a function which designs the menu and returns the... (2 Replies)
Discussion started by: crashnburn
2 Replies

3. Red Hat

Installing RedHat 8.0 onto Dell PowerEdge SC1425 - hdc: status error: status = 0x58

I have successfully installed RedHat 8.0 onto a Dell PowerEdge SC1425 today. This server has two SATA hard drives, and an IDE DVD-ROM drive. Using the following kernel parameters, i successfully installed across both hard drives from CD: ide0=0x1f0,0x3f6,14 vga=791 resolution=1024x768 expert... (5 Replies)
Discussion started by: fishsponge
5 Replies

4. Shell Programming and Scripting

status bar in shell script or perl

How To Generate different different progress bar in shell script? like we install some software it show us progress, like we install RPM that also show us progress. Thanks, Bash (2 Replies)
Discussion started by: learnbash
2 Replies

5. Shell Programming and Scripting

Replace space and vertical bar with verical bar

I am trying to get sed, tr or awk to search a file that contains records with fields delimited by the vertical bar | and replace the occurrences in the records where the vertical bar is preceded by a space " |" with a vertical bar. Sample data record zelli |||59 Stonewall Dr ||W Barnstable |MA... (2 Replies)
Discussion started by: clintrpeterson
2 Replies

6. Shell Programming and Scripting

Spinning bar status while doing something.

After some googling, I came across this script to create a spinning cursor: #!/bin/bash # paste following in your script declare -a Spinner Spinner=(/ - \\ \| / - \\ \| ) Spinnerpos=0 update_spinner() { printf "\b"${Spinner} (( Spinnerpos=(Spinnerpos +1)%8 )) } # testing... (2 Replies)
Discussion started by: mrwatkin
2 Replies

7. Programming

Help with ncurses

Help with ncurses Hi, I need some help with ncurses.I'm supposed to write a program in C to display date and time and also to input the username and password using C.I chose ncurses for my task and here I am. Code: #include <stdio.h> #include <termios.h> #include... (1 Reply)
Discussion started by: rakesh_01
1 Replies

8. Programming

ncurses refresh()

i have read in one of links, there its documented but i am using following code int main () { char ch; initscr(); printw("Enter a char :"); ch=getch(); printw("You Entered '%c' ",ch); getch(); endwin(); return 0; } the code does... (2 Replies)
Discussion started by: MrUser
2 Replies

9. Ubuntu

Why icon in status bar is disabled?

Below the list of command to explain the status michelangeli@hp:~$ lspci -nn | grep -i net 02:00.0 Ethernet controller : Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 03) 04:00.0 Network controller : Ralink corp. RT2790 Wireless 802.11n 1T/2R... (6 Replies)
Discussion started by: michelangeli
6 Replies

10. Programming

How to track table status delete/update/insert status in DB2 V10 z/os?

Dear Team I am using DB2 v10 z/os database . Need expert guidance to figure out best way to track table activities ( Ex Delete, Insert,Update ) Scenario We have a table which is critical and many developer/testing team access on daily basis . We had instance where some deleted... (1 Reply)
Discussion started by: Perlbaby
1 Replies
curses(3x)																curses(3x)

Name
       curses - screen functions with optimal cursor motion

Syntax
       cc [ flags ] files -lcurses -ltermcap [ libraries ]

Description
       These  routines give the user a method of updating screens with reasonable optimization.  They keep an image of the current screen, and the
       user sets up an image of a new one.  Then the subroutine tells the routines to make the current screen look like the new one.  To  initial-
       ize  the  routines,  the  routine must be called before any of the other routines that deal with windows and screens are used.  The routine
       should be called before exiting.

Functions
       addch(ch)		     add a character to stdscr
       addstr(str)		     add a string to stdscr
       box(win,vert,hor)	     draw a box around a window
       clear()			     clear stdscr
       clearok(scr,boolf)	     set clear flag for scr
       clrtobot()		     clear to bottom on stdscr
       clrtoeol()		     clear to end of line on stdscr
       crmode() 		     set cbreak mode
       delch()			     delete a character
       deleteln()		     delete a line
       delwin(win)		     delete win
       echo()			     set echo mode
       endwin() 		     end window modes
       erase()			     erase stdscr
       getch()			     get a char through stdscr
       getcap(name)		     get terminal capability name
       getstr(str)		     get a string through stdscr
       gettmode()		     get tty modes
       getyx(win,y,x)		     get (y,x) co-ordinates
       inch()			     get char at current (y,x) co-ordinates
       initscr()		     initialize screens
       insch(c) 		     insert a char
       insertln()		     insert a line
       leaveok(win,boolf)	     set leave flag for win
       longname(termbuf,name)	     get long name from termbuf
       move(y,x)		     move to (y,x) on stdscr
       mvcur(lasty,lastx,newy,newx)  actually move cursor
       newwin(lines,cols,begin_y,begin_x) create a new window
       nl()			     set newline mapping
       nocrmode()		     unset cbreak mode
       noecho() 		     unset echo mode
       nonl()			     unset newline mapping
       noraw()			     unset raw mode
       overlay(win1,win2)	     overlay win1 on win2
       overwrite(win1,win2)	     overwrite win1 on top of win2
       printw(fmt,arg1,arg2,...)     printf on stdscr
       raw()			     set raw mode
       refresh()		     make current screen look like stdscr
       resetty()		     reset tty flags to stored value
       savetty()		     stored current tty flags
       scanw(fmt,arg1,arg2,...)      scanf through stdscr
       scroll(win)		     scroll win one line
       scrollok(win,boolf)	     set scroll flag
       setterm(name)		     set term variables for name
       standend()		     end standout mode
       standout()		     start standout mode
       subwin(win,lines,cols,begin_y,begin_x) create a subwindow
       touchwin(win)		     "change" all of win
       unctrl(ch)		     printable version of ch
       waddch(win,ch)		     add char to win
       waddstr(win,str) 	     add string to win
       wclear(win)		     clear win
       wclrtobot(win)		     clear to bottom of win
       wclrtoeol(win)		     clear to end of line on win
       wdelch(win,c)		     delete char from win
       wdeleteln(win)		     delete line from win
       werase(win)		     erase win
       wgetch(win)		     get a char through win
       wgetstr(win,str) 	     get a string through win
       winch(win)		     get char at current (y,x) in win
       winsch(win,c)		     insert char into win
       winsertln(win)		     insert line into win
       wmove(win,y,x)		     set current (y,x) co-ordinates on win
       wprintw(win,fmt,arg1,arg2,...) printf on win
       wrefresh(win)		     make screen look like win
       wscanw(win,fmt,arg1,arg2,...) scanf through win
       wstandend(win)		     end standout mode on win
       wstandout(win)		     start standout mode on win

See Also
       ioctl(2), getenv(3), termcap(3x), tty(4), termcap(5)
       Screen Updating and Cursor Movement Optimization: A Library Package, ULTRIX Supplementary Documents Vol. II:Programmer

																	curses(3x)
All times are GMT -4. The time now is 10:14 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy