I'm building a small text editing application based around an editor built with racket/gui and framework.. The idea is that it has the usual text editing features but also buttons where I select text and then based on which button I click on the selected text is manipulated in different ways. I'm just building the gui part now. I started using just racket/gui but then tried to implement some things in "framework" but I'm having trouble with a few things and I can't figure out how to do them from the documentation.
In the code below: 1) How do I add a "Save" feature to the file menu. 2) The "Open recent" menu item in the file menu opens my DrRacket "recently opened files". How do I get it to look at its own history instead of DrRackets. 3) Where I define main-frame as a frame:standard-menus% object in the code below, I tried to define it as a frame:editor% object but I couldn't get that to work. Could someone show me how to do that. Thanks, Harry ------------------------------------- #lang racket/gui (require framework) (application:current-app-name "Sanskrit editor") (define main-frame (new frame:standard-menus% [label "Sanskrit editor"])) (send main-frame show #t) (define main-area (send main-frame get-area-container)) (define h-panel (new horizontal-panel% [parent main-area][stretchable-height #f])) (define msg (new message% [parent main-area][label "NO EVENTS SO FAR... "])) (define button-font (make-object font% 12 "Consolas" 'default 'normal 'bold )) (define button-1 (new button% [parent h-panel][font button-font] [label "Apply Sandhi"] ; Callback procedure for a button click: [callback (lambda (button event) (send msg set-label "TEST Apply Sandhi Test"))])) (define button-2 (new button% [parent h-panel][font button-font] [label "HK-->Unicode"] ; [style '(border)] ; Callback procedure for a button click: [callback (lambda (button event) (send msg set-label "TEST Converted HK-->Unicode"))])) (define main-text-editor (new text%)) (define default-delta (make-object style-delta%) ) (send default-delta set-delta-face "Consolas") (send default-delta set-size-add 4) (send main-text-editor change-style default-delta) (send main-text-editor set-max-undo-history 400) (send main-text-editor auto-wrap #t) (define main-canvas (new editor-canvas% [parent main-area])) (define WhiteSmokeColor (send the-color-database find-color "WhiteSmoke")) (send main-canvas set-canvas-background WhiteSmokeColor) (send main-canvas set-editor main-text-editor) -------------------------------------------------- .
____________________ Racket Users list: http://lists.racket-lang.org/users