summaryrefslogtreecommitdiff
path: root/sys/src/cmd/samterm/flayer.h
diff options
context:
space:
mode:
authorTaru Karttunen <taruti@taruti.net>2011-03-30 15:46:40 +0300
committerTaru Karttunen <taruti@taruti.net>2011-03-30 15:46:40 +0300
commite5888a1ffdae813d7575f5fb02275c6bb07e5199 (patch)
treed8d51eac403f07814b9e936eed0c9a79195e2450 /sys/src/cmd/samterm/flayer.h
Import sources from 2011-03-30 iso image
Diffstat (limited to 'sys/src/cmd/samterm/flayer.h')
-rwxr-xr-xsys/src/cmd/samterm/flayer.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/sys/src/cmd/samterm/flayer.h b/sys/src/cmd/samterm/flayer.h
new file mode 100755
index 000000000..41306f79e
--- /dev/null
+++ b/sys/src/cmd/samterm/flayer.h
@@ -0,0 +1,50 @@
+typedef enum Vis{
+ None=0,
+ Some,
+ All,
+}Vis;
+
+enum{
+ Clicktime=1000, /* one second */
+};
+
+typedef struct Flayer Flayer;
+
+struct Flayer
+{
+ Frame f;
+ long origin; /* offset of first char in flayer */
+ long p0, p1;
+ long click; /* time at which selection click occurred, in HZ */
+ Rune *(*textfn)(Flayer*, long, ulong*);
+ int user0;
+ void *user1;
+ Rectangle entire;
+ Rectangle scroll;
+ Rectangle lastsr; /* geometry of scrollbar when last drawn */
+ Vis visible;
+};
+
+void flborder(Flayer*, int);
+void flclose(Flayer*);
+void fldelete(Flayer*, long, long);
+void flfp0p1(Flayer*, ulong*, ulong*);
+void flinit(Flayer*, Rectangle, Font*, Image**);
+void flinsert(Flayer*, Rune*, Rune*, long);
+void flnew(Flayer*, Rune *(*fn)(Flayer*, long, ulong*), int, void*);
+int flprepare(Flayer*);
+Rectangle flrect(Flayer*, Rectangle);
+void flrefresh(Flayer*, Rectangle, int);
+void flresize(Rectangle);
+int flselect(Flayer*);
+void flsetselect(Flayer*, long, long);
+void flstart(Rectangle);
+void flupfront(Flayer*);
+Flayer *flwhich(Point);
+
+#define FLMARGIN 4
+#define FLSCROLLWID 12
+#define FLGAP 4
+
+extern Image *maincols[NCOL];
+extern Image *cmdcols[NCOL];