Slight refactor on the fix in the previous commit

Apply Leonard's patch for fixing the colors:

Fixed crashing problems: min and max had their logic inverted and Bytestream::read_string moved the cursor too early

Use stdint.h types for the bytestream

Added pdcurses source files, if no curses library is provided, these source files will be fallen back to instead of raising an error. Should make compiling on windows slightly less painful.

NULL -> nullptr

Fix rendering of the date string...

Fix bad comparision in Bytestream::resize

Fix min/max name clashing

Suppress more MSVC warnings

'\e' is non-standard use '\x1b' instead

Removed empty cursesstuff.h

Add support for standard pdcurses, thanks to Leonard for pointing out the solutions to a few mysteries.

Now works with MSVC 2010/pdcurses-win32a

some work on MSVC support (still doesn't work yet...)

Use raw mode instead of cbreak mode, otherwise ctrl+q doesn't appear to work right

Fix compilation

Merged with default protocol5

Removed format.cpp and format.h, use built-in formatting instead

Clarify the controls footnote

Allow compilation on Windows/MinGW

Added support for SVRC_YOUREDISCONNECTED protocol5

Added rudimentary support for CVar watch (only as a debug command for now) protocol5

Added support for colored nicknames protocol5

Updated updaterevision.py, now handles tags and provides HG_TAG if appropriate

- moved huffman from sources/ to top level because it's external

Added mention of STONE layer to the LICENSE

Added LICENSE (yay more license header copies)

Update license headers

Massive refactor

Merge tab-complete

Yay colors

Removed a lot of boilerplate code

- and it's not a release anymore either... x_x

- bump version to 1.1 (I guess this should've been done first)

- fixed: had problems with integral overloading under 32-bit

Added tag 1.0 for changeset 5e968dc8d552

- set release mode 1.0

- now supports upper-case color codes too

- readme updated

- changed write_float/read_float to use memcpy

- formatting

- simplified main() now that RCONSession really cannot ever be null

- rcon sessions are no longer allocated on the heap

- restructured rconsession constructor a bit

- I think closing sockets is a good idea

- hmm, yank kind of implies removal so 'yank_and_delete' is kind of redundantly long

- don't print if paste buffer is empty anymore..

- added yanking/pasting (support for readline ^Y)

- i intended to actually use that new last() overload...

- added timestamps to output

- fixed: IPAddress::StringParseError did not inherit from std::exception and was thus not caught properly

- fixed: horizontal input scrolling was broken

- cleanup, fixed red text not rendering

- added a nicklist!

- renamed RendererLine to ColoredLine and split it into its own files

- fixed: invoking the 'are you sure you want to disconnect?' message did not trigger a screen refresh

- added readline alt-d and ^w support (delete till word boundaries)

- added readline alt-b and alt-f support (skip past words)

- added readline shortcuts: ^B, ^F, ^A, ^E, ^D (aliases to keyboard presses), ^U, ^K (new functionality)

(0) -100 -60 +60 +100 tip

mercurial