Neil Hodgson wrote:
Having a look at winpdb, a Python debugger based on wxWidgets / wxSTC, http://www.digitalpeers.com/pythondebugger/

   It uses characters in the margin and background colours for break
points and the current line.
http://www.digitalpeers.com/pythondebugger/images/breakpoints.png

   The characters look ugly to me and I'd like to be able to publish a
set of margin icons on scintilla.org in xpm format for general use
under the same license as Scintilla. If you have some good icons that
you own the rights to and are interested in contributing, please
respond to the list, me or create a new RFE tracker item on
https://sourceforge.net/tracker/?group_id=2439&atid=352439

I already sent to this list (I think) my own list of bookmarks.
It is not awesome by no means, but some people may like/use some of them.
I use it by putting a simple
import bookmarks
in my properties. Of course, only the latest bookmark is used...

Note: I had a 64 colors symbol, using two characters per pixel. I don't know if I ever tested it... but it made crash SciTE when I wanted to use it.

I finally made a much needed upgrade of my version of Scintilla and SciTE to the latest one: it dated back around 1.61... The latest changes seems worth the upgrade. I just hope I didn't lost too much of my custom changes in the process: with the FilePath changes, the faces of the files was greatly changed, and it was hard to track my modifications.

At least, it compiled OK, beside some warning, including some strange "unreachable code" that seemed OK. I still compile with VC6...

Well, even after the upgrade, it still crashed.

That's not nice, so I looked at the Scintilla doc:
"The XPM format is used for the pixmap and it is limited to pixmaps that use one character per pixel."

Oops... Well, XPM code should be a bit more robust, that's not the first time I make it crash with incorrect (for it) XPM data.
I just checked the pixel size to reject the symbol if incorrect:

        nColours = atoi(line0);
        line0 = NextField(line0);
        if (atoi(line0) != 1) {
                // Only one char per pixel is supported
                return;
        }
        codes = new char[nColours];

First and last lines are from the current source, I added the 5 lines between them.

I don't send the whole file, I guess the above is enough for patching the code.
Method is: void XPM::Init(const char * const *linesForm)

OK, I managed to reduce the double chars to single, so the nice bookmark is now available.

I send the file, even if there are not the symbols Neil is looking for... At least, it can be used as inspiration. If I find time, I can try and make the requested symbols.

--
Philippe Lhoste
--  (near) Paris -- France
--  http://Phi.Lho.free.fr
--  --  --  --  --  --  --  --  --  --  --  --  --  --
## Bookmark pixmaps
# Only the latest is taken in account

# Neil's original
bookmark.pixmap=\
/* XPM */\
static char *right_xpm[] = {\
"15 16 11 1",\
"  c None",\
". c #B6B6B6",\
"+ c #828282",\
"@ c #404040",\
"# c #8EFFD4",\
"$ c #B1FFE2",\
"% c #48FFB8",\
"& c #FFFFFF",\
"* c #25FFAA",\
"= c #00DC92",\
"- c #00B97A",\
"       ..      ",\
"      .++.     ",\
"     .+@@+.    ",\
" [EMAIL PROTECTED]@+.   ",\
"[EMAIL PROTECTED]@+.  ",\
"+@@@@@@@[EMAIL PROTECTED] ",\
"[EMAIL PROTECTED]&[EMAIL PROTECTED]",\
"[EMAIL PROTECTED]&[EMAIL PROTECTED]",\
"[EMAIL PROTECTED]@+",\
"[EMAIL PROTECTED]@+.",\
"+@@@@@@@[EMAIL PROTECTED] ",\
"[EMAIL PROTECTED]@+.  ",\
" [EMAIL PROTECTED]@+.   ",\
"     .+@@+.    ",\
"      .++.     ",\
"       ..      "};

# The same with tweaked colors
bookmark.pixmap=\
/* XPM */\
static char *right_xpm[] = {\
"15 16 11 1",\
"  c None",\
". c #98C0B8",\
"+ c #88B0A8",\
"@ c #404040",\
"# c #8EFFD4",\
"$ c #B1FFE2",\
"% c #48FFB8",\
"& c #FFFFFF",\
"* c #25FFAA",\
"= c #00DC92",\
"- c #00B97A",\
"       ..      ",\
"      .++.     ",\
"     .+@@+.    ",\
" [EMAIL PROTECTED]@+.   ",\
"[EMAIL PROTECTED]@+.  ",\
"+@@@@@@@[EMAIL PROTECTED] ",\
"[EMAIL PROTECTED]&[EMAIL PROTECTED]",\
"[EMAIL PROTECTED]&[EMAIL PROTECTED]",\
"[EMAIL PROTECTED]@+",\
"[EMAIL PROTECTED]@+.",\
"+@@@@@@@[EMAIL PROTECTED] ",\
"[EMAIL PROTECTED]@+.  ",\
" [EMAIL PROTECTED]@+.   ",\
"     .+@@+.    ",\
"      .++.     ",\
"       ..      "};

# Ugly spiral...
bookmark.pixmap=\
/* XPM */\
static char *bookmarkSpiral[] = {\
/* width height num_colors chars_per_pixel */\
"15      16     4          1",\
/* colors */\
"  c None",\
"x c #000080",\
"o c #0000ff",\
"s c #00ffff",\
/* pixels */\
"  ooooooooxxsxo",\
" oossssssssxssx",\
"oossxooooxsssss",\
"ossxossssoxxssx",\
"osxossxxssoxsxo",\
"osossxooxssxxo ",\
"ososxossoxsso  ",\
"ososossxsoxso  ",\
"osososxossoso  ",\
"ososxosoxsoso  ",\
"osossxoxssoso  ",\
"osxossxssoxso  ",\
"ossxosssoxsso  ",\
"oossxoooxssoo  ",\
" oosssssssoo   ",\
"  ooooooooo    "\
};

# The SciTE icon, loosing much appeal after shrinking...
bookmark.pixmap=\
/* XPM */\
static char *bookmarkSciBall[] = {\
/* width height num_colors chars_per_pixel */\
"16      16     8          1",\
/* colors */\
"  c None",\
". c #242424",\
"# c #484848",\
"a c #6d6d6d",\
"b c #919191",\
"c c #b6b6b6",\
"d c #dadada",\
"e c #ffffff",\
/* pixels */\
"       ###      ",\
"    ##a##.##    ",\
"   abb.##.b###  ",\
"  ##d#a.b.b#a.. ",\
" a.aa#a.#c#a#.# ",\
" ..e.e.aa.b.#a.#",\
" .c###e.#c..b..b",\
".cb.c..ea.c.##a.",\
".#.d.d..e#.#b...",\
"..#.c#dabbb#a##.",\
" #.a.a#bda.a#...",\
" ####.a.a#a.....",\
"  ..########..# ",\
"  ..aaa###..#.  ",\
"   ..#.##....   ",\
"     ...#...    "\
};

# The Lua logo, tweaked to still look nice at this size
bookmark.pixmap=\
/* XPM */\
static char *bookmarkLua[] = {\
/* width height num_colors chars_per_pixel */\
"16      16     16         1",\
/* colors */\
"  c None",\
". c #ffffff",\
"# c #00007b",\
"! c #080884",\
"- c #21218c",\
"a c #31318c",\
"b c #313194",\
"c c #393994",\
"d c #42429c",\
"e c #4a4a94",\
"f c #5252a5",\
"g c #6565a4",\
"h c #7b7bb1",\
"i c #9191b7",\
"j c #adadbd",\
"k c #efeff7",\
/* pixels */\
"             g#g",\
"     f###f   ###",\
"   b#######  g#g",\
"  !#######-#i   ",\
" i######a..a#   ",\
" #######....h#  ",\
"j#######....##f ",\
"########a..a### ",\
"##.############ ",\
"##.##.#.#...### ",\
"e#.##.#.#aj.##f ",\
" #..#...#...##  ",\
" b###########h  ",\
"  ###########   ",\
"   b#######b    ",\
"     -###f      "\
};

# PHP icon...
# # color should be #777BB4, but that's too dark at this size...
bookmark.pixmap=\
/* XPM */\
static char *bookmarkPHP[] = {\
/* width height num_colors chars_per_pixel */\
"16    16       4            1",\
/* colors */\
"  c None",\
". c #000000",\
"- c #000080",\
"# c #979BD4",\
/* pixels */\
"                ",\
"                ",\
"                ",\
"   -........-   ",\
"  .##########.  ",\
".-#####.######- ",\
".##..-#..-#..-#.",\
".##.#.#.#.#.#.#.",\
".##..-#.#.-..-#.",\
".#.-##-##-.####.",\
" -.#######.###- ",\
"  .##########.  ",\
"   -........-   ",\
"                ",\
"                ",\
"                "\
};

# A pearl, to edit Perl code?
# I made it originally to have an icon for Perl source files,
# also available at 32x32 format, 256 or 16 colors...
bookmark.pixmap=\
/* XPM */\
static char *bookmarkPearl[] = {\
/* width height num_colors chars_per_pixel */\
"16      16     16         1",\
/* colors */\
"  c None",\
". c #ffffff",\
"! c #100414",\
"# c #100818",\
"a c #180010",\
"b c #180018",\
"c c #180818",\
"d c #4a63ff",\
"e c #525aff",\
"f c #5263ff",\
"g c #848484",\
"h c #8c848c",\
"i c #a5bdef",\
"j c #9cbdf7",\
"k c #c6c6c6",\
"l c #a5c6f7",\
/* pixels */\
"                ",\
"                ",\
"       kk       ",\
"    kh#!a#hk    ",\
"   k!#ac#bc k   ",\
"   gci.#b#bfg   ",\
"   b#.lbccdeb   ",\
"  k#ccb!b#ef#k  ",\
"  ka!c#b#fifbk  ",\
"   #c#bcfije#   ",\
"   hcbdeiif#h   ",\
"   kbdefdf!ck   ",\
"    kh#bc!hk    ",\
"       kk       ",\
"                ",\
"                "\
};

# Green arrows
bookmark.pixmap=\
/* XPM */\
static char *bookmarkArrows[] = {\
/* width height num_colors chars_per_pixel */\
"15      16     3          1",\
/* colors */\
"  c None",\
"# c #008000",\
"o c #00ff00",\
/* pixels */\
" #oo  #oo      ",\
"  #oo  #oo     ",\
"o  #oo  #oo    ",\
"oo  #oo  #oo   ",\
"#oo  #oo  #oo  ",\
" #oo  #oo  #oo ",\
"  #oo  #oo  #oo",\
"   #oo  #oo  #o",\
"  #oo  #oo  #oo",\
" #oo  #oo  #oo ",\
"#oo  #oo  #oo  ",\
"oo  #oo  #oo   ",\
"o  #oo  #oo    ",\
"  #oo  #oo     ",\
" #oo  #oo      ",\
"#oo  #oo       "\
};

# Blue gem, reduced to 1 char per pixel, since Scintilla doesn't support more
bookmark.pixmap=\
/* XPM */\
static char *bookmarkBluegem[] = {\
/* width height num_colors chars_per_pixel */\
"    15    15      64            1",\
/* colors */\
"  c #000000",\
". c #0c0630",\
"# c #8c8a8c",\
"a c #244a84",\
"b c #545254",\
"c c #cccecc",\
"d c #949594",\
"e c #346ab4",\
"f c #242644",\
"g c #3c3e3c",\
"h c #6ca6fc",\
"i c #143789",\
"j c #204990",\
"k c #5c8dec",\
"l c #707070",\
"m c #3c82dc",\
"n c #345db4",\
"o c #619df7",\
"p c #acacac",\
"q c #346ad4",\
"r c #1c3264",\
"s c #174091",\
"t c #5482df",\
"u c #4470c4",\
"v c #2450a0",\
"w c #14162c",\
"x c #5c94f6",\
"y c #b7b8b7",\
"z c #646464",\
"A c #3c68b8",\
"B c #7cb8fc",\
"C c #7c7a7c",\
"D c #3462b9",\
"E c #7c7eac",\
"F c #44464c",\
"G c #a4a4a4",\
"H c #24224c",\
"I c #282668",\
"J c #5c5a8c",\
"K c #7c8ebc",\
"L c #dcd7e4",\
"M c #141244",\
"N c #1c2e5c",\
"O c #24327c",\
"P c #4472cc",\
"Q c #6ca2fc",\
"R c #74b2fc",\
"S c #24367c",\
"T c #b4b2c4",\
"U c #403e58",\
"V c #4c7fd6",\
"W c #24428c",\
"X c #747284",\
"Y c #142e7c",\
"Z c #64a2fc",\
"0 c #3c72dc",\
"1 c #bcbebc",\
"2 c #6c6a6c",\
"3 c #848284",\
"4 c #2c5098",\
"5 c #1c1a1c",\
"6 c #243250",\
"7 c #7cbefc",\
"8 c #d4d2d4",\
/* pixels */\
"    yCbgbCy    ",\
"   #zGGyGGz#   ",\
"  #zXTLLLTXz#  ",\
" p5UJEKKKEJU5p ",\
" lfISa444aSIfl ",\
" wIYij444jsYIw ",\
" .OsvnAAAnvsO. ",\
" MWvDuVVVPDvWM ",\
" HsDPVkxxtPDsH ",\
" UiAtxohZxtuiU ",\
" pNnkQRBRhkDNp ",\
" 1FrqoR7Bo0rF1 ",\
" 8GC6aemea6CG8 ",\
"  cG3l2z2l3Gc  ",\
"    1GdddG1    "\
};
_______________________________________________
Scintilla-interest mailing list
[email protected]
http://mailman.lyra.org/mailman/listinfo/scintilla-interest

Reply via email to