Source refactoring; no functional changes.
This commit is contained in:
parent
b174130c91
commit
332fdba0bd
20 changed files with 1806 additions and 1440 deletions
65
ui.c
Normal file
65
ui.c
Normal file
|
|
@ -0,0 +1,65 @@
|
|||
/*
|
||||
* TTS - track your time.
|
||||
* Copyright (c) 2012-2014 Felicity Tarnell.
|
||||
*
|
||||
* Permission is granted to anyone to use this software for any purpose,
|
||||
* including commercial applications, and to alter it and redistribute it
|
||||
* freely. This software is provided 'as-is', without any express or implied
|
||||
* warranty.
|
||||
*/
|
||||
|
||||
#include "ui.h"
|
||||
#include "tts.h"
|
||||
|
||||
WINDOW *titwin, *statwin, *listwin;
|
||||
int in_curses;
|
||||
|
||||
/*
|
||||
* Move the cursor to the next entry after an operation like mark or deleted.
|
||||
* If there are no suitable entries after this one, move it backwards instead.
|
||||
*/
|
||||
void
|
||||
cursadvance()
|
||||
{
|
||||
entry_t *en;
|
||||
|
||||
if (!curent) {
|
||||
curent = TAILQ_FIRST(&entries);
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
* Try to find the next suitable entry to move the cursor to.
|
||||
*/
|
||||
for (en = TAILQ_NEXT(curent, en_entries); en; en = TAILQ_NEXT(en, en_entries)) {
|
||||
if (!showinv && en->en_flags.efl_invoiced)
|
||||
continue;
|
||||
curent = en;
|
||||
if (!curent->en_flags.efl_visible)
|
||||
pagestart++;
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
* No entries; if the current entry is visible, stay here, otherwise
|
||||
* try moving backwards instead.
|
||||
*/
|
||||
if (showinv || !curent->en_flags.efl_invoiced)
|
||||
return;
|
||||
|
||||
for (en = TAILQ_PREV(curent, entrylist, en_entries); en;
|
||||
en = TAILQ_PREV(en, entrylist, en_entries)) {
|
||||
if (!showinv && en->en_flags.efl_invoiced)
|
||||
continue;
|
||||
curent = en;
|
||||
if (!curent->en_flags.efl_visible)
|
||||
pagestart--;
|
||||
return;
|
||||
}
|
||||
|
||||
/*
|
||||
* Couldn't find any entries at all?
|
||||
*/
|
||||
curent = NULL;
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue