IonicWind Software

IWBasic => Object Oriented Programming => Topic started by: ts-soft on July 23, 2007, 04:47:08 AM

Title: cScintilla Class
Post by: ts-soft on July 23, 2007, 04:47:08 AM
cScintilla Class is a OOP wrapper for SciLexxer.dll

There is no DLL required for your executable, the dll is as resource implemented and works from memory!
All functions uses the scintilla_directfunction, it's a bit faster then sendmessage

The Class:

CLASS cScintilla
Declare cScintilla()

PUBLIC:
Declare Edit(parent:WINDOW, left:INT, top:INT, width:INT, height:INT, flags:INT, id:INT),INT
Declare GetHwnd(),UINT
Declare GetID(),UINT
Declare Load(filename:STRING),INT
Declare Save(filename:STRING),INT
Declare Send(Message:UINT, Opt lParam=0:INT, Opt wParam=0:INT),INT

PROTECTED:
Def m_hWnd:UINT
Def m_ID:UINT
Def m_WndData:UINT
Def m_MsgPointer:UINT
Def m_DLLhWnd:UINT
ENDCLASS


All constants and structures defined.

Download (http://ts-soft.eu/dl/cScintilla.zip)

Scintilla documentation and example included.

I hope it works  ;)

Feedback welcome (my first eBasic program)
Title: Re: cScintilla Class
Post by: GJ on July 23, 2007, 09:14:50 AM
I just tested your sample program, it works great !
( I only had to add $MAIN to the program, dont know if others have same issue)
(tested on windows XP)


Thanks for sharing !


GJ

Title: Re: cScintilla Class
Post by: ts-soft on July 23, 2007, 09:23:01 AM
Quote from: GJ on July 23, 2007, 09:14:50 AM
( I only had to add $MAIN to the program, dont know if others have same issue)
If you use "Build Single" and no project it works without $MAIN  ;)
Title: Re: cScintilla Class
Post by: pistol350 on July 23, 2007, 09:36:11 AM
Hi ts-soft!
Great Job!  8)
It works fine here!

Cheers!
Peter!
Title: Re: cScintilla Class
Post by: efgee on July 23, 2007, 10:32:27 AM
Thanks for sharing.

How did you convert the dll to a window resource if I might ask?

Title: Re: cScintilla Class
Post by: pistol350 on July 23, 2007, 10:58:43 AM
I may be wrong, but I think he did it as one would do with any file that need to be included in a project,
i mean by just following these steps:

1 -go to the compiler menu
2 -choose "resource"
3 -then "add" (if you created a project )
4 -then fill the blank required
5 -and finally browse for the file needed.

I forgot to say that the ".res" file is automatically generated when you save or compile your project.
Please correct me if am wrong.
thanks

Regards!
Peter

Title: Re: cScintilla Class
Post by: ts-soft on July 23, 2007, 11:06:44 AM
@pistol350

Put all files in the right subdirectory from EBDev dir. The zip has all sorted with subdirectories,
simple unpack it over your EBDev Directory (but not the scintilla license  ;D

Only this line:
$INCLUDE "cScintilla.inc"
is required! and all works without any project!
Title: Re: cScintilla Class
Post by: ts-soft on July 23, 2007, 01:52:53 PM
Quote from: efgee on July 23, 2007, 10:32:27 AM
Thanks for sharing.

How did you convert the dll to a window resource if I might ask?


Create a simple textfile and name it "cScintilla.rc"
Write the following text:
Quote1 SCIDLL "SciLexer.dll"
don't forgot a return at the end of the line.
Compile the rc-file with gorc, porc oder rc.

In this way you can change the dll, if a newer version available. This package uses Scilexer.dll 1.74

:)
Title: Re: cScintilla Class
Post by: pistol350 on July 23, 2007, 04:05:12 PM
QuoteCreate a simple textfile and name it "cScintilla.rc"
Write the following text:
Quote
1 SCIDLL "SciLexer.dll"
don't forgot a return at the end of the line.
Compile the rc-file with gorc, porc oder rc.

In this way you can change the dll, if a newer version available. This package uses Scilexer.dll 1.74

What i described before was a way to do it using the Emergence compiler.
I thought it was easier than using another program to compile the resource file

Regards!
Peter
Title: Re: cScintilla Class
Post by: ts-soft on July 23, 2007, 04:12:43 PM
Iis only a short discription to change to another version. if required (ii have nothing documented in this first version)

greetings Thomas
Title: Re: cScintilla Class
Post by: Techno on June 04, 2015, 02:10:17 AM
Quote from: ts-soft on July 23, 2007, 04:47:08 AM
cScintilla Class is a OOP wrapper for SciLexxer.dll

There is no DLL required for your executable, the dll is as resource implemented and works from memory!
All functions uses the scintilla_directfunction, it's a bit faster then sendmessage

The Class:

CLASS cScintilla
Declare cScintilla()

PUBLIC:
Declare Edit(parent:WINDOW, left:INT, top:INT, width:INT, height:INT, flags:INT, id:INT),INT
Declare GetHwnd(),UINT
Declare GetID(),UINT
Declare Load(filename:STRING),INT
Declare Save(filename:STRING),INT
Declare Send(Message:UINT, Opt lParam=0:INT, Opt wParam=0:INT),INT

PROTECTED:
Def m_hWnd:UINT
Def m_ID:UINT
Def m_WndData:UINT
Def m_MsgPointer:UINT
Def m_DLLhWnd:UINT
ENDCLASS


All constants and structures defined.

Download (http://ts-soft.eu/dl/cScintilla.zip)

Scintilla documentation and example included.

I hope it works  ;)

Feedback welcome (my first eBasic program)

The download link is broken. Where can I find your whole project with the cSintilla class?

Let me know I'm interested OOP programming
Title: Re: cScintilla Class
Post by: Bill-Bo on June 04, 2015, 04:43:11 AM
Is there any way to block this a**hole from the site?

Bill

P.S. Never mind. The SOB'd keep coming back under a different name.
Title: Re: cScintilla Class
Post by: Techno on June 04, 2015, 10:28:41 AM
Quote from: Bill-Bo on June 04, 2015, 04:43:11 AM
Is there any way to block this a**hole from the site?

Bill

P.S. Never mind. The SOB'd keep coming back under a different name.

Hi,

I just ask is there an new zip file. But this file is very old and does not exists today. No problem

I'm not an a**hole !
I just only learn IWBasic and read all the interesting topics for how I can developed applications in IWBasic with OOP programming that's all

Thank you
Title: Re: cScintilla Class
Post by: fasecero on June 04, 2015, 04:15:31 PM
Hi Techno, you're putting together a lot of stuff lately, sometimes I think you're John Titor trying to gather information to build the time machine :)

Just kidding, good luck with your programming!
Title: Re: cScintilla Class
Post by: Bill-Bo on June 04, 2015, 06:00:38 PM
Techno,

Okay, I take back what I called you. But, it seems that if you want to learn IWBasic you would not try to use bad zips from 2007 to 2010. If your new to programming, you are biting off more than you can chew. You're trying to fly a jet when you can't get a Cissna off the ground. Deal with the later posts so we wont get irritated at ya.

Bill