quran: an aya starts a juz if juz_start()
[cnoor.git] / cnoor.c
blob1a2313a111ea4380bc7a7d79142ad0b5eeeff21b
1 #include <stdlib.h>
2 #include <stdio.h>
3 #include "config.h"
4 #include "txtwin.h"
5 #include "quran.h"
6 #include "util.h"
8 static void ins_sura(struct txtwin *tw, struct quran *quran,
9 struct quran *trans, int sura)
11 char buf[16 * 1024];
12 int start = sura_start(sura);
13 int ayas = sura_ayas(sura);
14 int i;
15 for (i = 0; i < ayas; i++) {
16 quran_aya(quran, buf, LENGTH(buf), start + i);
17 txtwin_append(tw, buf, "quran");
18 sprintf(buf, " %d ", i + 1);
19 txtwin_append(tw, buf, "num");
20 if (trans) {
21 quran_aya(trans, buf, LENGTH(buf), start + i);
22 txtwin_append(tw, "\n", NULL);
23 txtwin_append(tw, buf, "trans");
25 txtwin_append(tw, "\n\n", NULL);
29 static void set_tags(struct txtwin *tw)
31 int i;
32 for (i = 0; i < LENGTH(styles); i++)
33 txtwin_tag(tw, styles[i].name, styles[i].fg,
34 styles[i].bg, styles[i].font);
37 int main(int argc, char **argv)
39 struct txtwin *tw;
40 struct quran *quran;
41 struct quran *trans = NULL;
42 txtwin_gtk_init(argc, argv);
43 tw = txtwin_alloc();
44 quran = quran_alloc(QURAN_PATH);
45 if (TRANS_PATH)
46 trans = quran_alloc(TRANS_PATH);
47 set_tags(tw);
48 if (argc > 1)
49 ins_sura(tw, quran, trans, atoi(argv[1]));
51 txtwin_loop(tw);
52 txtwin_free(tw);
53 quran_free(quran);
54 return 0;