summaryrefslogtreecommitdiffstats
path: root/RichString.h
Commit message (Collapse)AuthorAgeFilesLines
* RichString: add access function annotationsChristian Göttsche2024-01-201-0/+3
|
* Relocate include of config.h from header to source modeuleBenny Baumann2023-12-261-2/+0
|
* Merge branch 'style-header-consistency' of https://github.com/BenBE/htop ↵Nathan Scott2023-10-101-1/+1
|\ | | | | | | into BenBE-style-header-consistency
| * Always mark config.h with IWYU pragma: keepBenny Baumann2023-05-241-1/+1
| |
* | Avoid comma operator to reduce ambiguity of the assignmentBenny Baumann2023-05-281-1/+1
|/
* Update license headers to explicitly say GPLv2+Daniel Lange2021-09-221-1/+1
|
* Enclose macro argumentChristian Göttsche2021-05-101-7/+7
| | | | | Also enclosing is unnecessary in declaration as in int (VAR);
* RichString: do not unnecessarily clean whole bufferChristian Göttsche2021-03-171-4/+9
| | | | | | | The local stack buffer does not need to be cleaned to zeros when - just initialized, cause the length is set to 0 and the first character is set to '\0', so all printing functions will safely stop - no further used, i.e. the variable goes out of scope
* LED Meter: display wide characters and restore non-wide ncurses supportChristian Göttsche2021-01-151-2/+2
| | | | | | Print wide characters, like degree sign, properly via mvadd_wch(). Ignore attributes when returning value from RichString_getCharVal() in non-wide ncurses mode to test against raw characters.
* RichString: implement safe rewindChristian Göttsche2021-01-151-0/+2
| | | | | The current rewind logic causes issues when rewinding over the short string optimization boundary.
* RichString: refactor writing limited amount of columnsChristian Göttsche2021-01-151-0/+5
| | | | Closes: #468
* RichString_appendChr: add parameter to set attributesChristian Göttsche2021-01-131-1/+1
| | | | | | | Allows to set attributes when padding process fields in non-wide ncurses mode. Closes: #475
* Mark several non-modified pointer variables constChristian Göttsche2021-01-111-1/+1
|
* RichString_setAttrn: refactor to take a length instead of a stop indexChristian Göttsche2021-01-101-1/+1
| | | | Fixes: #459
* RichString: return number of written characters on write/append functionsChristian Göttsche2020-12-231-6/+6
|
* Split RichString_(append|appendn|write) into wide and asciiChristian Göttsche2020-12-081-3/+9
| | | | | | | | RichString_writeFrom takes a top spot during performance analysis due to the calls to mbstowcs() and iswprint(). Most of the time we know in advance that we are only going to print regular ASCII characters.
* Fully support non-ascii characters in Meter-BarChristian Göttsche2020-11-251-0/+2
| | | | | | | | | | Currently the code does not handle multi-byte characters, so length- computations take the raw count of C characters and not the to displayed size into account. An example is the degree sign for temperatures. Closes: #329
* Merge branch 'hili-new-old' of adsr/htop into highlight-new-old-processesDaniel Lange2020-11-161-0/+1
|\
| * Highlight new and old processes (#74)Adam Saponara2020-10-301-0/+1
| |
* | Avoid RichString_beginAllocated being ammendableBenny Baumann2020-11-021-1/+1
| |
* | Spacing around operatorsBenny Baumann2020-11-021-1/+1
| |
* | Spacing after keywords (while)Benny Baumann2020-11-021-2/+2
| |
* | Spacing after keywords (#define)Benny Baumann2020-11-021-2/+2
| |
* | Remove unnecessary trailing semicolon on macrosBenny Baumann2020-11-021-3/+3
| |
* | Enclose macro arguments in parenthesesChristian Göttsche2020-10-311-1/+1
|/
* Simplify RichString_beginChristian Göttsche2020-10-281-1/+1
|
* Enclose macro arguments in parenthesesChristian Göttsche2020-10-281-3/+3
|
* Make all required includes explicitBenny Baumann2020-10-181-18/+2
| | | | Information as seen by IWYU 0.12 + clang 9 on Linux
* Merge branch 'update-license-and-copyright-info'Nathan Scott2020-10-061-1/+1
|\
| * Update License consistently to GPLv2 as per COPYING fileDaniel Lange2020-10-051-1/+1
| |
* | Merge identical declarationsChristian Göttsche2020-10-051-10/+0
|/
* Avoid checking of undefined macrosChristian Göttsche2020-09-181-6/+6
| | | | | These feature macros are either define or not defined at all at the configure step.
* Clean up some code duplication in the header filesHugo Musso Gualandi2020-09-121-5/+2
| | | | | | | | | | | | | PR htop-dev/htop#70 got rid of the infrastructure for generating header files, but it left behind some code duplication. Some of cases are things that belong in the header file and don't need to be repeated in the C file. Other cases are things that belong in the C file and don't need to be in the header file. In this commit I tried to fix all of these that I could find. When given a choice I preferred keeping things out of the header file, unless they were being used by someone else.
* Consolidate repeated macro definitions into one headerNathan Scott2020-09-091-5/+0
| | | | | | | | The MIN, MAX, CLAMP, MINIMUM, and MAXIMUM macros appear throughout the codebase with many re-definitions. Make a single copy of each in a common header file, and use the BSD variants of MINIMUM/MAXIMUM due to conflicts in the system <sys/param.h> headers.
* Remove superfluous 'extern's from function declarations.Zev Weiss2020-09-031-9/+9
| | | | | | | | Applied via: $ find * -name '*.h' -exec sed -i -r 's/^extern (.+\()/\1/;' {} + Suggested-by: Bert Wesarg <bert.wesarg@googlemail.com>
* Axe automated header generation.Zev Weiss2020-09-031-2/+0
| | | | | | | | | | | | | | Reasoning: - implementation was unsound -- broke down when I added a fairly basic macro definition expanding to a struct initializer in a *.c file. - made it way too easy (e.g. via otherwise totally innocuous git commands) to end up with timestamps such that it always ran MakeHeader.py but never used its output, leading to overbuild noise when running what should be a null 'make'. - but mostly: it's just an awkward way of dealing with C code.
* Merge branch 'hishamhm-pull-960'Nathan Scott2020-08-201-1/+1
|\
| * Clean up existing whitespaceDaniel Flanagan2019-10-311-1/+1
| |
* | Re-generate all headers with latest scripts/MakeHeader.pyNathan Scott2020-08-181-8/+8
|/ | | | Sync-up missing extern declarations for many functions.
* Protect against overflows in RichString_setAttrnHisham Muhammad2018-02-261-0/+4
|
* Introduce CLAMP macro. Unify all MIN(MAX(a,b),c) uses.Explorer092016-01-151-4/+0
| | | | | | | | | | | | | | | | | | | | | | | With the CLAMP macro replacing the combination of MIN and MAX, we will have at least two advantages: 1. It's more obvious semantically. 2. There are no more mixes of confusing uses like MIN(MAX(a,b),c) and MAX(MIN(a,b),c) and MIN(a,MAX(b,c)) appearing everywhere. We unify the 'clamping' with a single macro. Note that the behavior of this CLAMP macro is different from the combination `MAX(low,MIN(x,high))`. * This CLAMP macro expands to two comparisons instead of three from MAX and MIN combination. In theory, this makes the code slightly smaller, in case that (low) or (high) or both are computed at runtime, so that compilers cannot optimize them. (The third comparison will matter if (low)>(high); see below.) * CLAMP has a side effect, that if (low)>(high) it will produce weird results. Unlike MIN & MAX which will force either (low) or (high) to win. No assertion of ((low)<=(high)) is done in this macro, for now. This CLAMP macro is implemented like described in glib <http://developer.gnome.org/glib/stable/glib-Standard-Macros.html> and does not handle weird uses like CLAMP(a++, low++, high--) .
* Fixes for color glitches in ncurses ABI6.Hisham Muhammad2015-08-271-1/+1
| | | | Could no longer reproduce #244 after these fixes.
* include wctype.h for iswprint()Christian Hesse2015-08-251-0/+4
|
* Extra checks.Hisham Muhammad2015-08-201-1/+1
|
* Make Unicode strings safe for ncurses 6 ABI.Hisham Muhammad2015-08-201-2/+2
| | | | Closes #241.
* Refactored key handlers.Hisham Muhammad2014-11-191-2/+4
| | | | | | Made the logic more modular, hopefully easier to follow, and removed repeated code. Plus, some optimization in RichString code.
* Add extra checks in configure.ac for different locations of (n)curses.hHisham Muhammad2013-02-261-0/+2
|
* search and filter for the strace and lsof screens!Hisham Muhammad2012-11-101-5/+3
|
* Remove old memory debugging routines. We have Valgrind nowadays.Hisham Muhammad2011-12-261-1/+0
|
* major header cleanupHisham Muhammad2011-12-261-9/+7
|

© 2014-2024 Faster IT GmbH | imprint | privacy policy