Skip to content

Commit 959e14a

Browse files
singaraionaclaude
andcommitted
feat(grid): column dropdown menus, expression rules, and real feed example
- Replace right-click context menus with click-to-open column dropdown menus - Add expression-based rules (op=-1) for arbitrary Rayfall filter expressions - Auto-quote symbol column values in rule evaluation - Update rmfeed example with stats grid, risk view, and upsert workflow Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
1 parent 44419c5 commit 959e14a

3 files changed

Lines changed: 277 additions & 190 deletions

File tree

examples/rmfeed.rfl

Lines changed: 20 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,30 @@
22
(set .kx.hclose (loadfn "/tmp/libraykx.so" "raykx_hclose" 1))
33
(set .kx.send (loadfn "/tmp/libraykx.so" "raykx_send" 2))
44

5-
(set upd (fn [payload]
5+
;; Stats grid
6+
(set stats-grid (widget {type: 'grid name: "Stats"}))
7+
8+
;; Risk view
9+
(set risk-view (widget {type: 'grid name: "Risk View"}))
610

7-
(println "Received payload: %" payload)
11+
;; Callback to be called by kdb+ server
12+
(set upd (fn [payload]
13+
(let data (at payload 'delta))
14+
(upsert 'stats 3 data)
15+
(draw stats-grid stats)
16+
(draw risk-view
17+
(xasc
18+
(select {from: stats
19+
Entity: EntityID
20+
Symbol: Symbol
21+
NetPosBPU: (- LPosBPU SPosBPU)
22+
OpgQty: (- SSL SSS)
23+
Pos: (- OLS OSS)
24+
}) ['NetPosBPU]))
825
))
926

1027
;; Connect to the server
1128
(set h (.kx.hopen "localhost:60325"))
1229

1330
;; subscribe and get initial data
14-
(set ini (.kx.send h '.net.sub))
15-
16-
;; (set ts (widget {type: 'text name: "Trades Count"}))
17-
;; (draw ts (.kx.send h "1+5612312"))
31+
(set stats (.kx.send h (list '.net.sub 0)))

0 commit comments

Comments
 (0)