From 690c35cb83df8a561beedc733bf9022e18102804 Mon Sep 17 00:00:00 2001 From: Art Cancro Date: Sun, 11 May 2008 05:07:27 +0000 Subject: [PATCH] Added code to activate color selection in javascript. Now we just need the back end code. --- webcit/notes.c | 45 ++++++++++++++++++++++++++---------------- webcit/static/wclib.js | 14 +++++++++++++ 2 files changed, 42 insertions(+), 17 deletions(-) diff --git a/webcit/notes.c b/webcit/notes.c index 1fcb6213d..f4f31b416 100644 --- a/webcit/notes.c +++ b/webcit/notes.c @@ -7,16 +7,16 @@ #include "groupdav.h" #include "webserver.h" -char *pastel_palette[] = { - "#808080", - "#ff8080", - "#8080ff", - "#ffff80", - "#80ff80", - "#ff80ff", - "#80ffff", - "#ff8080", - "#808080" +int pastel_palette[9][3] = { + { 0x80, 0x80, 0x80 }, + { 0xff, 0x80, 0x80 }, + { 0x80, 0x80, 0xff }, + { 0xff, 0xff, 0x80 }, + { 0x80, 0xff, 0x80 }, + { 0xff, 0x80, 0xff }, + { 0x80, 0xff, 0xff }, + { 0xff, 0x80, 0x80 }, + { 0x80, 0x80, 0x80 } }; @@ -59,7 +59,18 @@ void display_vnote_div(struct vnote *v) { wprintf(""); for (i=0; i<9; ++i) { if ((i%3)==0) wprintf(""); - wprintf("", pastel_palette[i]); + wprintf("", + pastel_palette[i][0], + pastel_palette[i][1], + pastel_palette[i][2] + ); if (((i+1)%3)==0) wprintf(""); } wprintf("
uid, + pastel_palette[i][0], + pastel_palette[i][1], + pastel_palette[i][2] + ); + wprintf("bgcolor=\"#%02x%02x%02x\">
"); @@ -163,9 +174,9 @@ struct vnote *vnote_new_from_msg(long msgnum) { if (!vnote_from_body) { vnote_from_body = vnote_new(); vnote_from_body->uid = strdup(uid_from_headers); - vnote_from_body->color_red = 0xFF; - vnote_from_body->color_green = 0xff; // pastel yellow - vnote_from_body->color_blue = 0x80; + vnote_from_body->color_red = pastel_palette[3][0]; + vnote_from_body->color_green = pastel_palette[3][1]; + vnote_from_body->color_blue = pastel_palette[3][2]; vnote_from_body->body = malloc(32768); vnote_from_body->body[0] = 0; body_len = 0; @@ -337,9 +348,9 @@ void add_new_note(void) { if (v) { v->uid = malloc(128); generate_uuid(v->uid); - v->color_red = 0xFF; - v->color_green = 0xff; // pastel yellow - v->color_blue = 0x80; + v->color_red = pastel_palette[3][0]; + v->color_green = pastel_palette[3][1]; + v->color_blue = pastel_palette[3][2]; v->body = strdup(_("Click on any note to edit it.")); write_vnote_to_server(v); vnote_free(v); diff --git a/webcit/static/wclib.js b/webcit/static/wclib.js index 41d8232fe..5ff50ab0e 100644 --- a/webcit/static/wclib.js +++ b/webcit/static/wclib.js @@ -497,6 +497,8 @@ function NotesDragMouseDown(evt, uid) { } +// Called when the user clicks on the palette icon of a sticky note to change its color. +// It toggles the color selector visible or invisible. function NotesClickPalette(evt, uid) { uid_of_note_being_colored = uid; @@ -518,6 +520,18 @@ function NotesClickPalette(evt, uid) { } +// Called when the user clicks on one of the colors in an open color selector. +// Sets the desired color and then closes the color selector. + +function NotesClickColor(evt, uid, red, green, blue) { + uid_of_note_being_colored = uid; + d = $('palette-' + uid_of_note_being_colored); + + alert('FIXME red=' + red + ' green=' + green + ' blue=' + blue); + + d.style.display = 'none'; +} + -- 2.30.2