summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMatthias Melcher <fltk@matthiasm.com>2005-06-01 13:41:01 +0000
committerMatthias Melcher <fltk@matthiasm.com>2005-06-01 13:41:01 +0000
commitdaa8f533973c796a765773d02e09cb3c201cde4b (patch)
tree65960d6a21e97491bad6ef608b4f7794258d07ac /src
parent510545879b34a8b7c9ebc9839e9268bb9df0cfd4 (diff)
Added a symbol named 'recycle' that can be used to refresh directory listings, etc.
git-svn-id: file:///fltk/svn/fltk/branches/branch-1.1@4390 ea41ed52-d2ee-0310-a9c1-e6b18d33e121
Diffstat (limited to 'src')
-rw-r--r--src/fl_symbols.cxx34
1 files changed, 34 insertions, 0 deletions
diff --git a/src/fl_symbols.cxx b/src/fl_symbols.cxx
index 42880704b..02f3fe2ed 100644
--- a/src/fl_symbols.cxx
+++ b/src/fl_symbols.cxx
@@ -36,6 +36,7 @@
#include <FL/Fl.H>
#include <FL/fl_draw.H>
+#include <FL/math.h>
#include "flstring.h"
typedef struct {
@@ -575,6 +576,38 @@ static void draw_fileprint(Fl_Color c) {
EC;
}
+static void draw_recycle(Fl_Color c) {
+ double i, r, di=5.0, dr1=0.005, dr2=0.015;
+ int j;
+ for (j=0; j<4; j++) {
+ fl_rotate(180.0);
+ if (j&2) {
+ fl_color(c);
+ set_outline_color(c);
+ BC;
+ } else {
+ fl_color(c);
+ BCP;
+ }
+ vv(-0.1, 0.0);
+ vv(-1.0, 0.0);
+ vv(-1.0, 0.9);
+ for (i=135.0, r=1.0; i>=0.0; i-=di, r-=dr1) {
+ double a = i/180.0 * M_PI;
+ vv(cos(a)*r, sin(a)*r);
+ }
+ for (i=0.0; i<=135.0; i+=di, r-=dr2) {
+ double a = i/180.0 * M_PI;
+ vv(cos(a)*r, sin(a)*r);
+ }
+ if (j&2) {
+ EC;
+ } else {
+ ECP;
+ }
+ }
+}
+
static void fl_init_symbols(void) {
static char beenhere;
if (beenhere) return;
@@ -616,6 +649,7 @@ static void fl_init_symbols(void) {
fl_add_symbol("filesave", draw_filesave, 1);
fl_add_symbol("filesaveas", draw_filesaveas, 1);
fl_add_symbol("fileprint", draw_fileprint, 1);
+ fl_add_symbol("recycle", draw_recycle, 1);
// fl_add_symbol("file", draw_file, 1);
}