2013/4/27 Denis Kudriashov <dionisi...@gmail.com> > 2013/4/27 Denis Kudriashov <dionisi...@gmail.com> > >> 2013/4/27 Denis Kudriashov <dionisi...@gmail.com> >> >>> 2013/4/27 stephane ducasse <stephane.duca...@free.fr> >>> >>>> Nice! >>>> Denis did you see the benchs that doru tried to see if we can use >>>> Rubric? >>>> Because it is interesting to see if we can load and manipulate really >>>> large file. >>>> >>>> Now it would be good that alain releases Rubric with a stable version >>>> and check how to take advantage of the new TextMorph. >>>> >>>> I saw his post. >>> And just now I check this test with TxTextMorph with unwrapped strategy. >>> Similar results like at Rubric test. nearly 30 secs. >>> I generate 50 mb string with almost million lines: >>> TxModel building get 10 seconds. Layout building get 20 seconds. >>> >>> If you want repeat this test you should not use #newTextContents: >>> method. You should build text model manually and put it at morph by >>> #textModel:. >>> #newTextContents: method should be optimized. When I try test with >>> #newTextContents: it was hang on very long time and I stop it. >>> >>> >> And now text editing has no optimization. After each edit full text >> layout rebuilt. So pressing some character in our test take another 20 >> seconds. >> It should be just fixed >> > > And #drawOn: method should be optimized too. I think it is not difficult > task. > Now each line try to draw on canvas. But morph should draw only visible > lines >
Drawing fixed. I upload new TxText-Layout version > > >> >>> >>>> Stef >>>> >>>> On Apr 26, 2013, at 11:19 PM, Denis Kudriashov <dionisi...@gmail.com> >>>> wrote: >>>> >>>> Hi guys. >>>> >>>> I'm happy to announce that new text editor based on new text model >>>> done. You can load configuration from >>>> http://www.smalltalkhub.com/#!/~sig/TxText. Last version: 0.6. >>>> See class side example methods. >>>> >>>> What available now in TxTextMorph: >>>> - cursor navigation with move left, right, down, up and mouse click >>>> - text selection with move left, right, down, up and mouse movement >>>> - editing by keyboard input >>>> - text wrap >>>> - #addCursor/#removeCursor >>>> - #enableSelection. >>>> - #beEditable >>>> - all keyboard interractions based on shortcuts >>>> >>>> Little details about navigation and editing: >>>> There is TxEditor object which know about cursor position and text >>>> selection. Text morph ask him to perform all navigation and editing >>>> behaviour. >>>> It has cursorMode which knows how to change editor selection when >>>> cursor moved. Editor delegates all move actions to cursorPosition by >>>> #doesNotUnderstand method. It is simplified adding new navigation methods. >>>> For example see TxTextMorph>>enableSelection >>>> >>>> aTxTextMorph>>moveEditorOn: Character arrowLeft by: #moveLeft. >>>> >>>> This expression adds two shortcuts: to move editor left and to select >>>> text left (when selectionModeModifier active). >>>> >>>> What next: >>>> - Remains standart navigation and editing features like copy/paste, >>>> move to line end, to text end and etc. >>>> - halo menu items to edit text and layout properties >>>> - Edit decorators to get mask behaviour like "(999)***-**-**", pretty >>>> numbers like "1'000'000", secrete field like "***" >>>> - Value specs to filter inserted text (only numbers, only english and >>>> etc) >>>> >>>> There are some problems with focus behaviour now. And drawing text >>>> morph with transparent back color works bad. It will be cool if somebody >>>> with good knowledge at this topics can fix it. >>>> >>>> Best regards, >>>> Denis >>>> >>>> >>>> >>> >> >