summaryrefslogtreecommitdiff
path: root/apps/plugins/clock/clock_bitmap_strings.c
diff options
context:
space:
mode:
authorKevin Ferrare <kevin@rockbox.org>2007-08-04 03:01:46 +0000
committerKevin Ferrare <kevin@rockbox.org>2007-08-04 03:01:46 +0000
commit93b2f9fd447b73fff736d71826880ef9ac64bd94 (patch)
tree1a4f54016c312738d66fb9dd2348ea0ef14f1255 /apps/plugins/clock/clock_bitmap_strings.c
parentffbbc60f38ddc8aeadc9cea1102077e22ca84a1a (diff)
downloadrockbox-93b2f9fd447b73fff736d71826880ef9ac64bd94.zip
rockbox-93b2f9fd447b73fff736d71826880ef9ac64bd94.tar.gz
rockbox-93b2f9fd447b73fff736d71826880ef9ac64bd94.tar.bz2
rockbox-93b2f9fd447b73fff736d71826880ef9ac64bd94.tar.xz
Rewrote the clock plugin in a cleaner and more modular way so that it can scale on remote screens. Use left-right keys to change the type of clock displayed (analogic, digital, binary) and up/downto change the look of the clock
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@14174 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/clock/clock_bitmap_strings.c')
-rw-r--r--apps/plugins/clock/clock_bitmap_strings.c46
1 files changed, 46 insertions, 0 deletions
diff --git a/apps/plugins/clock/clock_bitmap_strings.c b/apps/plugins/clock/clock_bitmap_strings.c
new file mode 100644
index 0000000..f2bef78
--- /dev/null
+++ b/apps/plugins/clock/clock_bitmap_strings.c
@@ -0,0 +1,46 @@
+/***************************************************************************
+ * __________ __ ___.
+ * Open \______ \ ____ ____ | | _\_ |__ _______ ___
+ * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ /
+ * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < <
+ * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \
+ * \/ \/ \/ \/ \/
+ * $Id: jackpot.c 14034 2007-07-28 05:42:55Z kevin $
+ *
+ * Copyright (C) 2007 Copyright Kévin Ferrare
+ *
+ * All files in this archive are subject to the GNU General Public License.
+ * See the file COPYING in the source tree root for full license agreement.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ****************************************************************************/
+
+#include "clock.h"
+#include "clock_bitmap_strings.h"
+
+void draw_string(struct screen* display, const struct picture* bitmaps,
+ char* str, int x, int y){
+ int i, bitmap_pos;
+ char c;
+ for(i=0;(c=str[i]);i++){
+ bitmap_pos=-1;
+ if(c>='0'&&c<='9')
+ bitmap_pos=c-'0';
+ else if(c==':')
+ bitmap_pos=10;
+ else if(c=='A' || c=='/')/* 'AM' in digits, '/' in smalldigits */
+ bitmap_pos=11;
+ else if(c=='P' || c=='.')/* 'PM' in digits, '.' in smalldigits */
+ bitmap_pos=12;
+ if(bitmap_pos>=0)
+ vertical_picture_draw_sprite(display, bitmaps, bitmap_pos,
+ x+i*bitmaps->width, y);
+ }
+}
+
+void getstringsize(const struct picture* bitmaps, char* str, int *w, int *h ){
+ *h=bitmaps->height;
+ *w=rb->strlen(str)*bitmaps->width;
+}