Commit Graph
32 Commits
Author SHA1 Message Date
mmdolze a151ee0fc4 Mega change to the LCDd's header files:
1. Use <stdbool.h> if it is available but keep a compatibility shim in
   shared/defines.h in case it is not.
2. Unbreak the circular header dependencies (mostly):
   2a. client.c and client.h may NOT depend on 'struct Menu'. Use a void pointer
       and casts instead.
   2b. Separate the data type definitions in client.h and screen.h from
       function prototypes which may require other data structures. This makes
       header dependencies much more easy to maintain. Usually the data types
       should have been moved to their own files but I (mmdolze) chose to
       separate them using different header guards.
   2c. Remove many now unused header includes.
Apply (old BSD-) style on menuscreens.c.
2012-02-22 22:25:32 +00:00
toykeeper cac9a56299 updated ToyKeeper's contact info 2011-01-05 23:34:37 +00:00
mmdolze 9c1bde0ece Add some more meaningful comments I found in an old file on the lcdproc.org
web site.
2010-11-16 21:51:25 +00:00
mmdolze 38fa2720cf Fix handling of named priorities.
Any name not in the list of priorities made the screen get hidden. Now
the server returns an error message.
Discovered by lint(1).
2009-05-14 06:15:59 +00:00
marschap 30f16bcdaa use correct order for free()ing resources (Andre Guibert de Bruet) 2008-12-14 16:14:29 +00:00
marschap 99928e7303 make sure previously allocated mem get free()'d if subsequent allocactions fail 2008-12-14 09:59:34 +00:00
marschap 1a5b38f028 Doxygen-ize file headers 2008-11-30 22:31:20 +00:00
marschap dcc643ec18 extend deletion functions in LL.c, use them to make "bye" client command work 2008-11-30 15:30:28 +00:00
marschap 6a1511bb72 * coding style harmonization in servers/
- explicitely declare void arguments
  - make a few string args const
* better support for shorter displays in server screen
* make target to create top level tag file
2007-04-02 21:29:53 +00:00
robijn 71922063b8 Change to priority classes. Will probably require some fixings.
- Now using priority classes internally and in protocol
- Converting (depreciated) priorty numbers to the classes BACKGROUND,
  INFO and FOREGROUND
- Added menu_goto command (only works when menu not active)
2003-02-27 21:20:20 +00:00
robijn c8fc08f6e3 Reporting cleaned up and levels made more consistent. 2002-07-14 20:30:33 +00:00
robijn 91ffd9d109 Moved configfile.c and .h to shared/
Made reporting more general by making syslog appname settable.
2002-06-29 16:37:18 +00:00
robijn 8ff8857eda Added support for client supplied menus.
Also modified existing menustuff slightly (on some points I made some
things more consistent).
2002-06-28 23:35:55 +00:00
robijn 3168d4cafc Menustuff added/modified! 2002-05-26 19:21:23 +00:00
robijn 6ec0dc376c Removed reference to client_data.h 2002-04-26 00:17:04 +00:00
robijn 726f2f995e Big changes in code of clients, screens and widgets.
- Moved and altered code to create, destroy and manipulate clients, screens
  and widgets in an OO-like manner.
- Moved command execution code to a commands directory, splitting commands to
  what subject they are concerned.
- Menus are temporary disabled while working on new menu structure.
2002-04-26 00:00:31 +00:00
robijn 71056ec551 v0.5 kick-off 2001-12-30 00:15:25 +00:00
robijn b228b720d9 Added uniform copyright notice to all files of the server core. 2001-12-27 23:30:36 +00:00
robijn 285d29edf3 Reporting patch. 2001-11-29 14:09:13 +00:00
glengray 853d9053dd Added the fine grained backlight hierarchy code.
Depending on how the server sets the backlight it controls the clients
(if OPEN then the clients have individual control). If the client is set to
open (inherited from the server) then each screen has backlight control.
2001-11-14 13:57:25 +00:00
glengray e137c1011b Added the client_function timeout to the code.
Also noticed a BIG bug in the screen_set code, the strcmp's never worked, they
where no longer checking the results == 0.
2001-11-12 17:35:43 +00:00
ddouthitt e753b0564a Updated configuration file processing:
* Options override all configuration file settings
* In absence of configuration file settings or option settings,
  defaults are used
* Added new global settings: Port, Bind, Wait, WaitTime, Debug
* Added more documentation to LCDd.conf
2001-09-28 14:23:41 +00:00
ddouthitt eb6e99e7e8 Server no longer uses a fixed lcd structure, but now a pointer to
a lcd_logical_driver structure (lcd_ptr).  Fixed bug in lcd.c
which caused lcd_drv_getkey_loop to act badly.
2001-09-27 16:12:55 +00:00
ddouthitt a7bf3b00ad Minor changes (almost entirely in main.c):
* Heavily commented options
* Fixed bug introduced into default_duration and -w (my fault)
* Defined configuration file string defaults (no processing yet)
* Added simple optimization to option processing
* Reformed some comments for easier readability
* Fixed bug that caused program not to drop root privs when
  running on port under 1024
* Converted further to use syslog instead of printf
2001-09-25 14:03:13 +00:00
ddouthitt 6a0e23dc3e Massive changes (first commit), including but not limited to:
* Ability to specify port and address to bind to
* By default, binds only to 127.0.0.1 port 13666
* Client commands now return usage when no options given
* New driver command: getinfo
* Added comments all over the place
* Used #defines to further document code
* Used #defines to set up compile-time defaults, etc.
* Cleaned up client command argument analysis in client_functions.c
* Beginning support of syslog
* Some bug fixes
2001-09-21 21:08:10 +00:00
ppokorny e7316389e8 Fixed compile errors on FreeBSD related to cfmakeraw and friends on the
serial port side.  Also fixed problems with ioperm on the parallel port
side.

Added --waittime option to the server to specify how long the server
should leave a screen up before changing to the next screen.
2001-07-18 22:30:12 +00:00
ppokorny 00cc9fca23 + Changed protocol to 0.3 because we now accept both -foo and foo
as argument introducers.  in 0.4-pre10, these were changed
   from foo to -foo and this broke many clients.  This change
   should fix that and be backward/forward compatible.
 + Added a noop function to the protocol.  This is useful for writing
   shell script clients of LCDproc.
 + Changed the shared sock_send_string function to NOT send the
   ending NUL ('\0') byte with the string.  This was confusing
   in Perl clients which saw NUL's as the first character of
   each reply.  WARNING: The LCDPROC client depended on this
   behavior, your client may too.  Use the newline instead.
   See the code in clients/lcdproc/main.c (look for "switch(buf[i])")
   to see one way to handle this.  This should allow new clients
   to connect to old servers and vice-versa.
 + Messed with include structure in .c files.  It should no longer
   be necessary to specify ../.. to get to shared code headers.
   Also, since we are using automake, the global config.h can be
   found with just #include "config.h" as it's location is included
   in a -I to the compilers.  As a result "make distcheck" now works.
2001-05-25 03:14:27 +00:00
ppokorny 877d8ac8e8 Added GLK12232-25SM support with glk driver.
Fixed lots of small problems in various places.
Added new protocol commands screen_add/del_key so screens
   can request keystrokes when they are being displayed.
Lots of work on CPU GRAPH and BIG NUMBER CLOCK screens.
Fixed 'output' function in MtxOrb.c
2001-04-27 02:20:38 +00:00
William Ferrell 6a115b4446 More formatting changes, new tags file. 2000-04-03 22:13:57 +00:00
William Ferrell ddfd41f53e More formatting updates. Reduced whitespace, looks even better. 2000-03-30 20:43:33 +00:00
William Ferrell f5a5e9653b Removed lcddriver.c (doesn't do anything, isn't in any makefiles, etc.).
Passed *every* piece of source in this project through indent. I'm setting
things up with ctags soon and am actually going to *gasp* use a nice
programming environment to continue development in. :)
2000-03-30 20:20:41 +00:00
William Ferrell 2635c3085d Initial revision 1999-12-09 23:15:14 +00:00