This commit is contained in:
Nishi 2025-11-22 17:57:17 +09:00
commit 1c4e999ebe
Signed by: nishi
GPG key ID: 27EF69B208EB9343
7 changed files with 65 additions and 32 deletions

View file

@ -4,3 +4,4 @@ project(
)
add_subdirectory(mbiff)
add_subdirectory(mauplay)

10
mauplay/CMakeLists.txt Normal file
View file

@ -0,0 +1,10 @@
include(MDEBase)
setup_project(mauplay ${CMAKE_INSTALL_BINDIR})
target_link_libraries(
mauplay
PRIVATE
MDEAudio
)
find_package(PkgConfig)

3
mauplay/main.c Normal file
View file

@ -0,0 +1,3 @@
#include "mauplay.h"
int main() {}

19
mauplay/mauplay.h Normal file
View file

@ -0,0 +1,19 @@
#ifndef __MAUPLAY_H__
#define __MAUPLAY_H__
#include "config.h"
/* Milsko */
#include <MDE/Foundation.h>
#include <Mw/Milsko.h>
/* External */
/* Standard */
#include <sys/stat.h>
#include <unistd.h>
#include <pwd.h>
#include <stdlib.h>
#include <string.h>
#endif

View file

@ -3,28 +3,28 @@
static time_t last = 0;
static char* mailpath;
void init_mail(void){
void init_mail(void) {
struct stat s;
struct passwd* pwd = getpwuid(getuid());
if(getenv("MAIL") != NULL){
if(getenv("MAIL") != NULL) {
mailpath = malloc(strlen(getenv("MAIL")) + strlen(pwd->pw_name) + 1);
sprintf(mailpath, getenv("MAIL"), pwd->pw_name);
}else{
} else {
mailpath = malloc(strlen(_PATH_MAILDIR) + 1 + strlen(pwd->pw_name) + 1);
sprintf(mailpath, _PATH_MAILDIR "/%s", pwd->pw_name);
}
if(stat(mailpath, &s) == 0){
if(stat(mailpath, &s) == 0) {
last = s.st_mtime;
}
}
void check_mail(void){
void check_mail(void) {
struct stat s;
s.st_mtime = 0;
if(stat(mailpath, &s) == 0 || last != 0){
if((s.st_mtime == 0 && last != 0) || s.st_mtime > last){
if(stat(mailpath, &s) == 0 || last != 0) {
if((s.st_mtime == 0 && last != 0) || s.st_mtime > last) {
MwVaApply(image,
MwNpixmap, full,
NULL);

View file

@ -7,7 +7,7 @@ MwWidget window, image, mail;
MwLLPixmap empty, full;
static int waiting = 0;
static void resize(MwWidget handle, void* user, void* client){
static void resize(MwWidget handle, void* user, void* client) {
int w = MwGetInteger(handle, MwNwidth);
int h = MwGetInteger(handle, MwNheight);
int iw = w < h ? w : h;
@ -23,20 +23,20 @@ static void resize(MwWidget handle, void* user, void* client){
NULL);
}
static void tick(MwWidget handle, void* user, void* client){
static void tick(MwWidget handle, void* user, void* client) {
(void)handle;
(void)user;
(void)client;
waiting += MwWaitMS;
if(waiting >= 1000){
if(waiting >= 1000) {
check_mail();
waiting = 0;
}
}
static void mouseUp(MwWidget handle, void* user, void* client){
static void mouseUp(MwWidget handle, void* user, void* client) {
(void)handle;
(void)user;
(void)client;