patch 8.1.2029: cannot control 'cursorline' highlighting well

Problem:    Cannot control 'cursorline' highlighting well.
Solution:   Add "screenline". (Christian Brabandt, closes #4933)
diff --git a/src/option.h b/src/option.h
index 76d67d9..bb68d5a 100644
--- a/src/option.h
+++ b/src/option.h
@@ -287,15 +287,20 @@
 #define STL_ALL		((char_u *) "fFtcvVlLknoObBrRhHmYyWwMqpPaN{#")
 
 // flags used for parsed 'wildmode'
-#define WIM_FULL	1
-#define WIM_LONGEST	2
-#define WIM_LIST	4
+#define WIM_FULL	0x01
+#define WIM_LONGEST	0x02
+#define WIM_LIST	0x04
 
 // arguments for can_bs()
 #define BS_INDENT	'i'	// "Indent"
 #define BS_EOL		'o'	// "eOl"
 #define BS_START	's'	// "Start"
 
+// flags for the 'culopt' option
+#define CULOPT_LINE	0x01	// Highlight complete line
+#define CULOPT_SCRLINE	0x02	// Highlight screen line
+#define CULOPT_NBR	0x04	// Highlight Number column
+
 #define LISPWORD_VALUE	"defun,define,defmacro,set!,lambda,if,case,let,flet,let*,letrec,do,do*,define-syntax,let-syntax,letrec-syntax,destructuring-bind,defpackage,defparameter,defstruct,deftype,defvar,do-all-symbols,do-external-symbols,do-symbols,dolist,dotimes,ecase,etypecase,eval-when,labels,macrolet,multiple-value-bind,multiple-value-call,multiple-value-prog1,multiple-value-setq,prog1,progv,typecase,unless,unwind-protect,when,with-input-from-string,with-open-file,with-open-stream,with-output-to-string,with-package-iterator,define-condition,handler-bind,handler-case,restart-bind,restart-case,with-simple-restart,store-value,use-value,muffle-warning,abort,continue,with-slots,with-slots*,with-accessors,with-accessors*,defclass,defmethod,print-unreadable-object"
 
 /*