Skip to content

Commit 0887b54

Browse files
cyringCyrIng
authored and
CyrIng
committed
[UI] Time of the day displayed in the right side of menu
1 parent bb9db4d commit 0887b54

8 files changed

+54
-45
lines changed

corefreq-cli-rsc-en.h

+3-1
Original file line numberDiff line numberDiff line change
@@ -1533,7 +1533,9 @@
15331533
#define RSC_MENU_ITEM_MENU_CODE_EN " [F2] Menu "
15341534
#define RSC_MENU_ITEM_VIEW_CODE_EN " [F3] View "
15351535
#define RSC_MENU_ITEM_WINDOW_CODE_EN " [F4] Window "
1536-
#define RSC_MENU_ITEM_DATE_TIME_CODE_EN "[F2] %x %k:%M:%S"
1536+
#define RSC_MENU_ITEM_DATE_TIME_CODE_EN "%x %k:%M:%S"
1537+
#define RSC_MENU_ITEM_FULL_TIME_CODE_EN "%k:%M:%S"
1538+
#define RSC_MENU_ITEM_TINY_TIME_CODE_EN "%k:%M"
15371539
#define RSC_MENU_ITEM_SETTINGS_CODE_EN " Settings [s] "
15381540
#define RSC_MENU_ITEM_SMBIOS_CODE_EN " SMBIOS data [B] "
15391541
#define RSC_MENU_ITEM_KERNEL_CODE_EN " Kernel data [k] "

corefreq-cli-rsc-fr.h

+2
Original file line numberDiff line numberDiff line change
@@ -912,6 +912,8 @@ do echo -en "$h$l\t""\xc3""\x$h$l""\t"; done; done;echo
912912
#define RSC_MENU_ITEM_VIEW_CODE_FR " [F3] Vue "
913913
#define RSC_MENU_ITEM_WINDOW_CODE_FR " [F4] Fen""\xaa""tre "
914914
#define RSC_MENU_ITEM_DATE_TIME_CODE_FR RSC_MENU_ITEM_DATE_TIME_CODE_EN
915+
#define RSC_MENU_ITEM_FULL_TIME_CODE_FR RSC_MENU_ITEM_FULL_TIME_CODE_EN
916+
#define RSC_MENU_ITEM_TINY_TIME_CODE_FR RSC_MENU_ITEM_TINY_TIME_CODE_EN
915917
#define RSC_MENU_ITEM_SETTINGS_CODE_FR " R""\xa9""glages [s] "
916918
#define RSC_MENU_ITEM_SMBIOS_CODE_FR " Infos SMBIOS [B] "
917919
#define RSC_MENU_ITEM_KERNEL_CODE_FR " Infos Noyau [k] "

corefreq-cli-rsc-theme-dflt.h

-6
Original file line numberDiff line numberDiff line change
@@ -1739,12 +1739,6 @@
17391739
LKW,LKW,LKW,LKW,LKW, LKW, LKW,LKW,LKW,LKW,LKW,LKW \
17401740
}
17411741

1742-
#define RSC_MENU_ITEM_DATE_TIME_THM_DFLT_ATTR \
1743-
{ \
1744-
HKW,_LKW,_LKW,HKW,LKW,LKW,LKW,LKW,LKW,LKW,LKW,LKW, \
1745-
LKW, LKW, LKW,LKW,LKW,LKW,LKW,LKW,LKW,LKW,LKW,LKW \
1746-
}
1747-
17481742
#define RSC_CREATE_MENU_FN_KEY_THM_DFLT_ATTR \
17491743
{ \
17501744
LKW,LKW,LKW,LKW,LKW,LKW,LKW,LKW, LKW,LKW,LKW,LKW, \

corefreq-cli-rsc-theme-usr1.h

-6
Original file line numberDiff line numberDiff line change
@@ -1739,12 +1739,6 @@
17391739
LKM,LKM,LKM,LKM,LKM, LKM, LKM,LKM,LKM,LKM,LKM,LKM \
17401740
}
17411741

1742-
#define RSC_MENU_ITEM_DATE_TIME_THM_USR1_ATTR \
1743-
{ \
1744-
HKM,_LKM,_LKM,HKM,LKM,LKM,LKM,LKM,LKM,LKM,LKM,LKM, \
1745-
LKM, LKM, LKM,LKM,LKM,LKM,LKM,LKM,LKM,LKM,LKM,LKM \
1746-
}
1747-
17481742
#define RSC_CREATE_MENU_FN_KEY_THM_USR1_ATTR \
17491743
{ \
17501744
LKM,LKM,LKM,LKM,LKM,LKM,LKM,LKM, LKM,LKM,LKM,LKM, \

corefreq-cli-rsc-theme-usr2.h

-6
Original file line numberDiff line numberDiff line change
@@ -1739,12 +1739,6 @@
17391739
LWK,LWK,LWK,LWK,LWK, LWK, LWK,LWK,LWK,LWK,LWK,LWK \
17401740
}
17411741

1742-
#define RSC_MENU_ITEM_DATE_TIME_THM_USR2_ATTR \
1743-
{ \
1744-
HKW,_LWK,_LWK,HKW,LWK,LWK,LWK,LWK,LWK,LWK,LWK,LWK, \
1745-
LWK, LWK, LWK,LWK,LWK,LWK,LWK,LWK,LWK,LWK,LWK,LWK \
1746-
}
1747-
17481742
#define RSC_CREATE_MENU_FN_KEY_THM_USR2_ATTR \
17491743
{ \
17501744
LWK,LWK,LWK,LWK,LWK,LWK,LWK,LWK, LWK,LWK,LWK,LWK, \

corefreq-cli-rsc.c

+3-2
Original file line numberDiff line numberDiff line change
@@ -285,7 +285,6 @@ DEF_LDB(RSC_CREATE_MENU_DISABLE);
285285
DEF_LDB(RSC_MENU_ITEM_MENU);
286286
DEF_LDB(RSC_MENU_ITEM_VIEW);
287287
DEF_LDB(RSC_MENU_ITEM_WINDOW);
288-
DEF_LDB(RSC_MENU_ITEM_DATE_TIME);
289288
DEF_LDB(RSC_CREATE_MENU_FN_KEY);
290289
DEF_LDB(RSC_CREATE_MENU_SHORTKEY);
291290
DEF_LDB(RSC_CREATE_MENU_CTRL_KEY);
@@ -1448,7 +1447,9 @@ RESOURCE_ST Resource[] = {
14481447
LDS(RSC_MENU_ITEM_MENU),
14491448
LDS(RSC_MENU_ITEM_VIEW),
14501449
LDS(RSC_MENU_ITEM_WINDOW),
1451-
LDS(RSC_MENU_ITEM_DATE_TIME),
1450+
LDT(RSC_MENU_ITEM_DATE_TIME),
1451+
LDT(RSC_MENU_ITEM_FULL_TIME),
1452+
LDT(RSC_MENU_ITEM_TINY_TIME),
14521453
LDT(RSC_MENU_ITEM_SETTINGS),
14531454
LDT(RSC_MENU_ITEM_SMBIOS),
14541455
LDT(RSC_MENU_ITEM_KERNEL),

corefreq-cli-rsc.h

+2
Original file line numberDiff line numberDiff line change
@@ -1251,6 +1251,8 @@ enum {
12511251
RSC_MENU_ITEM_VIEW,
12521252
RSC_MENU_ITEM_WINDOW,
12531253
RSC_MENU_ITEM_DATE_TIME,
1254+
RSC_MENU_ITEM_FULL_TIME,
1255+
RSC_MENU_ITEM_TINY_TIME,
12541256
RSC_MENU_ITEM_SETTINGS,
12551257
RSC_MENU_ITEM_SMBIOS,
12561258
RSC_MENU_ITEM_KERNEL,

corefreq-cli.c

+44-24
Original file line numberDiff line numberDiff line change
@@ -7411,76 +7411,86 @@ int ByteReDim(unsigned long ival, int constraint, unsigned long *oval)
74117411
void ForEachCellPrint_Menu(Window *win, void *plist)
74127412
{
74137413
WinList *list = (WinList *) plist;
7414+
TGrid *spacer;
74147415
CUINT col, row;
7415-
int len;
74167416

74177417
if (win->lazyComp.rowLen == 0) {
74187418
for (col = 0; col < win->matrix.size.wth; col++) {
74197419
win->lazyComp.rowLen += TCellAt(win, col, 0).length;
74207420
}
74217421
}
7422-
if (win->matrix.origin.col > 0) {
7423-
LayerFillAt( win->layer,
7424-
0,
7425-
win->matrix.origin.row,
7426-
win->matrix.origin.col, hSpace,
7427-
win->hook.color[0].title);
7428-
}
74297422
for (col = 0; col < win->matrix.size.wth; col++) {
74307423
PrintContent(win, list, col, 0);
74317424
}
7432-
for (row = 1; row < win->matrix.size.hth; row++) {
7425+
for (row = 1; row < win->matrix.size.hth - 1; row++) {
74337426
if (TCellAt(win,
74347427
(win->matrix.scroll.horz + win->matrix.select.col),
74357428
(win->matrix.scroll.vert + row)).quick.key != SCANKEY_VOID) {
74367429
PrintContent(win, list, win->matrix.select.col, row);
74377430
}
74387431
}
7439-
len = Draw.Size.width
7440-
- (int) win->lazyComp.rowLen
7441-
- (int) win->matrix.origin.col;
7442-
if (len > 0)
7432+
if ((spacer = &win->grid[col * row]) != NULL)
74437433
{
7434+
const int len = Draw.Size.width
7435+
- (int) win->lazyComp.rowLen
7436+
- (int) win->matrix.origin.col;
7437+
7438+
LayerFillAt( win->layer,
7439+
0, win->matrix.origin.row,
7440+
spacer->cell.length, spacer->cell.item,
7441+
win->hook.color[0].title );
7442+
spacer++;
7443+
spacer++;
7444+
7445+
if (len > 0) {
74447446
LayerFillAt( win->layer,
74457447
(win->matrix.origin.col + win->lazyComp.rowLen),
74467448
win->matrix.origin.row,
7447-
len, hSpace,
7449+
len, spacer->cell.item,
74487450
win->hook.color[0].title);
7451+
}
74497452
}
74507453
}
74517454

74527455
void TOD_Refresh(TGrid *grid, DATA_TYPE data[])
74537456
{
74547457
size_t timeLength;
7455-
char timeString[RSZ(MENU_ITEM_MENU) + 1];
7458+
char timeString[RSZ(MENU_ITEM_MENU) + 1], *timeFormat;
74567459
struct tm *brokTime, localTime;
7460+
int pos = Draw.Size.width > MIN_WIDTH ? Draw.Size.width - MIN_WIDTH : 0;
74577461

74587462
time_t currTime = time(NULL);
74597463
brokTime = localtime_r(&currTime, &localTime);
74607464

7465+
if (pos > 18) {
7466+
timeFormat = (char*) RSC(MENU_ITEM_DATE_TIME).CODE();
7467+
} else if (pos > 8) {
7468+
timeFormat = (char*) RSC(MENU_ITEM_FULL_TIME).CODE();
7469+
} else {
7470+
timeFormat = (char*) RSC(MENU_ITEM_TINY_TIME).CODE();
7471+
}
74617472
timeLength = strftime( timeString, RSZ(MENU_ITEM_MENU) + 1,
7462-
(char*) RSC(MENU_ITEM_DATE_TIME).CODE(), brokTime );
7473+
timeFormat, brokTime );
74637474

7464-
if ((timeLength > 0) && (timeLength <= RSZ(MENU_ITEM_MENU))) {
7465-
memcpy(grid->cell.item, timeString, timeLength);
7466-
memcpy(grid->cell.attr, RSC(MENU_ITEM_DATE_TIME).ATTR(), timeLength);
7467-
}
7475+
if ((timeLength > 0) && (timeLength <= RSZ(MENU_ITEM_MENU))) {
7476+
pos = pos - (int) timeLength + 5;
7477+
memcpy(grid->cell.item, hSpace, grid->cell.length);
7478+
memcpy(&grid->cell.item[pos], timeString, timeLength);
7479+
}
74687480
}
74697481

74707482
Window *CreateMenu(unsigned long long id, CUINT matrixSelectCol)
74717483
{
74727484
Window *wMenu = CreateWindow( wLayer, id,
7473-
3, 14, 3, 0,
7485+
3, 15, 3, 0,
74747486
WINFLAG_NO_STOCK
74757487
| WINFLAG_NO_SCALE
74767488
| WINFLAG_NO_BORDER );
74777489
if (wMenu != NULL)
74787490
{
74797491
/* Top Menu */
7480-
GridCall(
74817492
StoreTCell(wMenu, SCANKEY_NULL, RSC(MENU_ITEM_MENU).CODE(),
7482-
RSC(MENU_ITEM_MENU).ATTR()),
7483-
TOD_Refresh);
7493+
RSC(MENU_ITEM_MENU).ATTR());
74847494

74857495
StoreTCell(wMenu, SCANKEY_NULL, RSC(MENU_ITEM_VIEW).CODE(),
74867496
RSC(MENU_ITEM_VIEW).ATTR());
@@ -7659,6 +7669,16 @@ Window *CreateMenu(unsigned long long id, CUINT matrixSelectCol)
76597669
#endif
76607670

76617671
StoreTCell(wMenu, SCANKEY_VOID, "", RSC(VOID).ATTR());
7672+
/* Menu Spacers */
7673+
StoreTCell(wMenu, SCANKEY_VOID, "\x020\x020\x020",
7674+
RSC(UI).ATTR()[UI_WIN_MENU_TITLE_UNFOCUS]);
7675+
7676+
StoreTCell(wMenu, SCANKEY_VOID, "", RSC(VOID).ATTR());
7677+
7678+
GridCall(
7679+
StoreTCell(wMenu, SCANKEY_VOID, hSpace,
7680+
RSC(UI).ATTR()[UI_WIN_MENU_TITLE_UNFOCUS]),
7681+
TOD_Refresh);
76627682
/* Bottom Menu */
76637683
StoreWindow(wMenu, .color[0].select,
76647684
RSC(UI).ATTR()[UI_WIN_MENU_UNSELECT]);

0 commit comments

Comments
 (0)