[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Orgmode] [PATCH] added a new modeline face for tasks which have overrun
From: |
Richard Riley |
Subject: |
[Orgmode] [PATCH] added a new modeline face for tasks which have overrun their effort estimate |
Date: |
Wed, 20 Jan 2010 03:15:05 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/23.1 (gnu/linux) |
This small patch (be gentle, its my first) adds a new
face,org-mode-line-clock-overrun, for the modeline task clock when a
task has overrun its allotted Estimate.
I will try to set up the remote repo thing described here
http://orgmode.org/worg/org-contribute.php#sec-3 but I'm not 100% sure
of what it is I'm supposed to set up there. Should it be a mirror of the
master git repo?
Comments on elisp ineptitude welcome.
Subject: [PATCH] added a new modeline face for tasks which have overrun
their effort estimate
---
lisp/org-clock.el | 8 +++++---
lisp/org-faces.el | 2 ++
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/lisp/org-clock.el b/lisp/org-clock.el
index 07f5e81..03df5b6 100644
--- a/lisp/org-clock.el
+++ b/lisp/org-clock.el
@@ -388,6 +388,8 @@ pointing to it."
(insert (format "[%c] %-15s %s\n" i cat task))
(cons i marker)))))
+(defvar org-task-overrun nil)
+
(defun org-clock-get-clock-string ()
"Form a clock-string, that will be show in the mode line.
If an effort estimate was defined for current item, use
@@ -406,6 +408,7 @@ If not, show simply the clocked time like 01:50."
h m org-clock-heading))))
(defun org-clock-update-mode-line ()
+ (if org-clock-effort (org-clock-notify-once-if-expired))
(setq org-mode-line-string
(org-propertize
(let ((clock-string (org-clock-get-clock-string))
@@ -417,8 +420,7 @@ If not, show simply the clocked time like 01:50."
(org-propertize clock-string 'help-echo help-text)))
'local-map org-clock-mode-line-map
'mouse-face (if (featurep 'xemacs) 'highlight 'mode-line-highlight)
- 'face 'org-mode-line-clock))
- (if org-clock-effort (org-clock-notify-once-if-expired))
+ 'face (if org-task-overrun 'org-mode-line-clock-overrun
'org-mode-line-clock)))
(force-mode-line-update))
(defun org-clock-get-clocked-time ()
@@ -473,7 +475,7 @@ Notification is shown only once."
(when (marker-buffer org-clock-marker)
(let ((effort-in-minutes (org-hh:mm-string-to-minutes org-clock-effort))
(clocked-time (org-clock-get-clocked-time)))
- (if (>= clocked-time effort-in-minutes)
+ (if (setq org-task-overrun (>= clocked-time effort-in-minutes ))
(unless org-clock-notification-was-shown
(setq org-clock-notification-was-shown t)
(org-notify
diff --git a/lisp/org-faces.el b/lisp/org-faces.el
index e3294eb..dad2b5e 100644
--- a/lisp/org-faces.el
+++ b/lisp/org-faces.el
@@ -641,6 +641,8 @@ If it is less than 8, the level-1 face gets re-used for
level N+1 etc."
(org-copy-face 'modeline 'org-mode-line-clock
"Face used for clock display in mode line.")
+(org-copy-face 'modeline 'org-mode-line-clock-overrun
+ "Face used for clock display for overrun tasks in mode line.")
(provide 'org-faces)
--
1.6.5
--
Google Talk : address@hidden http://www.google.com/talk
- [Orgmode] [PATCH] added a new modeline face for tasks which have overrun their effort estimate,
Richard Riley <=