News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

XComponent

Started by Mincho Georgiev, August 31, 2008, 06:22:16 PM

Previous topic - Next topic

Mincho Georgiev

Hi everybody, it's been a while :)
Today i decide to put in order my old projects directory and i found something that i develop almost 2 years ago.
Project which involve Scintilla editing component as a static library in editor, written in masm (and masm32).
As i said, almost 2 years ago I've rewrite the Assembler Lexer in Scintilla ,so it can supports full masm syntax and folding,
i mean comment block syntax highlighting and folding, conditional assembly folding, macro and procedure folding and so on.
I sent  the lexer i wrote to Neil Hodgson back then,because i was tired to recompile every time scintilla when new version is out with it,
and he said to me that if i want my lexer to be included in the project of scintilla i have to participate in their blog and users there
to decide if my lexer should or shouldn't take place in their project. I don't have so much free time to do that so i just keep it for me.
Today i found in my old projects directory the editor i wrote while ago and i decide to post it.
Thank you!
And Greetings (i've been away for a while, i hope you didn't forget me :wink)

[attachment deleted by admin]

hutch--

Its good to see you back. I thought you had been ambushed by a blonde.  :bg
Download site for MASM32      New MASM Forum
https://masm32.com          https://masm32.com/board/index.php

Mincho Georgiev

 :lol
Thanks. I escaped to take a breath  :bg

PBrennick

Its good to see you back. I think it is a shame that they treated you in such a poor manner. You could use your knowledge and the knowledge of others, here, to do your own thing. It will be good to see you coding, again, on a regular basis. I was recently gone for over a year, also; but I am glad to be back. Even though I am not as good as I once was, I still have things to offer that have value and I am certain that you do, also.

On a selfish note and because I do not mind admitting when I do not know how to do something; I am interested in how you implimented folding. i would like my editor to be able to do that and also to do 'Block Select' mode.

-- Paul
The GeneSys Project is available from:
The Repository or My crappy website

Mincho Georgiev

Hi Paul, I'm glad to see you! First of all, i really hope that you are getting better. I was looking around the forum these days and i saw that the project of yours is advancing
and I'm glad about that also!
About the folding implementation,  i didn't post no code here, because the lexer that i wrote is in c++ . The Editor is in masm32, that's true, but the main syntax parser in the organization of scintilla's code, which is responsible for the folding and syntax highlighting is the lexer and it's might be considered as an object that rules the way that window will be painted. And that includes all of the elements of the control.
Right now I'm developing my own advanced text control and I'm using the same scheme, i.e. When the text is loaded, it is parsed by the lexer and then is painted the way it's attributes are set by that parsing. Simultaneously the margins are drawn with the text and the folding is drawn with them  again by the attributes that lexer is recoding.
If you ask me, because i might get confused, for the particular way in which the margins are drawn with folding's graphs, this is done by the control as far as i remember with xpm graph structures which are parsed and then drawn on surface.  Scintilla is working with xpm's and not with ImageLists and i really prefer that method for my future development as well.
I hope my answer was useful in any way.
Thanks again for your response! Regards!
:bg