MaxIDE Community Edition

BlitzMax Forums/MaxGUI Module/MaxIDE Community Edition

skidracer(Posted 2007) [#1]
sourceforge pages

file downloads

Features

New GTK Linux binary built with Brucey's GTKMaxGui and magic WebMozilla modules


LarsG(Posted 2007) [#2]
what's the status on this, compared to your MaxEdit?
Is it "merged", or are you still developing your own version?


skidracer(Posted 2007) [#3]
MaxEdit remains a research project at this time.

The official MaxIDE is getting a little facelift this week, so hopefully I'll be posting a few fixes for the CE edition to inherit over the next little while including this one for linux gtk button problem.


Mark Tiffany(Posted 2007) [#4]
Cheers skid - I'm afraid the time I have available to devote to this is quite limited at the moment, but will try to spend some time tidying up a few loose ends over the weekend. What would really motivate me is if one of those nice new textarea controls (dmaz, was that you?) could get added in soon.

Please drop me an email if you're looking to make some changes: one thing I would quite like to move towards in the maxide2 branch is something like your plugin structure in maxedit.


Brucey(Posted 2007) [#5]
Pluginability would be a great feature.


Pit-le-rouge(Posted 2007) [#6]
Hi.
I just synchronized the modules today.
As I see that there was an update of cocoa (for maxgui), I immediately try to recompile Max IDE community edition 1.15 and.....
ERROR (identifier "eventsource" not found) !!!
At least on Mac, the "eventsource()" seems not to be recognized anymore.....

It's easy to make a test.
Download the source of Maxgui commmunity edition and try to compile.
The error come at this line:

Method Poll()
If EventSource()<>panel Return
Select EventID()


skidracer(Posted 2007) [#7]
Add an import brl.eventqueue below the framework command in the main file.


Ian Thompson(Posted 2007) [#8]
Code folding not feasible?


Mark Tiffany(Posted 2007) [#9]
Yes, and we actually have some code from dmaz in the maxide2 cvs ready and waiting to be incorporated that will do this. We also have a new parser to integrate that would enable a wwhole bunch of neat stuff. But the few people involved can't quite motivate ourselves to do this (dmaz's code while great, isn't 100% complete and has a few bugs to iron out yet, and factoring in the new lexer will take a bit of work to say the least). This is largely because it's likely that we'll be seeing a whole new IDE from mark at some point.

In terms of the future of the CE IDE, I don't propose to kill it. And I'm quite happy to fix bugs, and people are still absolutely welcome to contribute. It's just that I don't know that we'll see any major improvements now. I'm also personally going through major change at my work in the form of outsourcing, which depending on how things go, will lead to either redundancy in the next few months (unlikely) or exciting but time consuming opportunities (quite likely, but who's to say for sure with these things!)

However, if enough people do express a strong opinion that we should get on with improving the CE IDE, or if anyone wants to get in there themselves, please do shout up.

Also, as per the other thread, I'd be quite keen to look into a merger of skid's maxedit and the CE IDE, but I'd need a positive response from him, and a strong response to this thread to really think about going there.

However (another one), I'll be off the radar for a couple of weeks now, so don't expect a prompt response to offers of help. When I check back in 2 weeks time, if this thread is long enough, well, we'll see...


Ian Thompson(Posted 2007) [#10]
Well, the CE is the superior IDE for BM for me. I tried em all and the most productive. Im not sure we will see a drastically different IDE from Mark, as more of a new GUI API.


CASO(Posted 2007) [#11]
I added the following line below the framework command on the main file
Import brl.eventqueue
and it still is saying Identifier 'EventSource' not found
What should I do?


Mark Tiffany(Posted 2007) [#12]
It's also needed in some of the other files, not just the main file. The debugger should pop you to each file it's needed in.

I'm guessing this is when downloading the source package: this is actually now quite out of date with the code in the CVS. I really ought to do a recompile and re-package each version up at some point...


Boulderdash(Posted 2007) [#13]
I would just like to say thanks for the effort everyone involved, Im testing the new community IDE right now, straight away I noticed the continue button, that was on my wish list.


Dabz(Posted 2007) [#14]
Yeah, nice work guys! :)

I couldnt get away with the original IDE, but the little extras on this one make it more workable... As well as the docs being organised more thoughtfully!

Dabz


degac(Posted 2007) [#15]
Hi to all!

I have implemented a new command-pre processor command for easy typing...I found it userful, maybe it can be a 'normal' features of the language/IDE.

What is it?

DEFINE global|local|field|const:type{int|float|double|...}
value1, value2, value3=10,value4
value5
value6=[10,10]
END DEFINE

DEFINE GLOBAL:Tgadget
		main_window,help_window,button_start,button_stop
	END DEFINE
	
	TYPE my_type
		DEFINE FIELD:float
			x,y,z,dx,dy,dz
		END DEFINE
	END TYPE

to obtain
	GLOBAL main_window:tgadget
	GLOBAL help_window:tgadget
	GLOBAL button_start:tgadegt
	GLOBAL button_Stop:tgadget

	TYPE my_type
		FIELD x:float,y:float,z:float,dx:float,dy:float,dz:float
	END TYPE


I have uploaded the full (messy!) source [the file are DEFINE.bmx and LIB_STRING.bmx for who is interested in...] here

http://www.graphio.net/download/degac_maxide_CE.rar

(it contains the .exe for who have not MaxGUI to compile)

Note: The new IDE when you build/run a program now will create 2 file: a basic .bmx (with the new DEFINE..END DEFINE) and a .copy.bmx that contains the translations in plain...
PS: It has (surely) bugs


Scaremonger(Posted 2007) [#16]
Now that Blitzmax 1.26 is released; the documents no longer work properly.


Mark Tiffany(Posted 2007) [#17]
If you download the source code in maxide2 on SF.net, you will find it now works again with the 1.26 update (thanks Yan). Couple of other bug fixes in there too. No binaries (yet).


Brucey(Posted 2007) [#18]
How's about a port to wxMax? ;-)


LarsG(Posted 2007) [#19]
ooh.. ooh.. that sounds like a great idea Brucey.
I've seen that demo on wxWidgets editor thingy you've got, and it looks and feels very nice indeed. :)

Let's get this editor running!! NEW IDE for the people!!!!








ok, I'll just stand in the corner here for awhile..


Mark Tiffany(Posted 2007) [#20]
How's about a port to wxMax? ;-)

I (and I suspect many others) would prefer to add some functionality... ;-P


Pit-le-rouge(Posted 2007) [#21]
Hi Marc.

On SF.net, there is a zip file with the sources of MAxIde 1.15.
It's not the case for MaxIde 2.
Is it possible to provide this ?

Thanks for your job (I use MaxIde CE 1.15 since the beginning of the project) !


Mark Tiffany(Posted 2007) [#22]
Good point.

I've made a swathe of amendments to the code in maxide2 in the past week to bring it up to speed with the official IDE, including the new help and sorted code tree items - yay!

The one thing not quite complete if project handling (as I intend to support CVS as well as SVN), so if you download the source from CVS, beware. There are also a couple of editing bugs (just re-formatting issues I believe) I've introduced, but nothing nasty - I'm using it as my IDE now.

I'll upload a maxide2src.zip once I'm happy projects are working, probably by saturday (famous last words).


Pit-le-rouge(Posted 2007) [#23]
Thanks Mark


Mark Tiffany(Posted 2007) [#24]
Project handling, SVN AND CVS support now checked in and working. So maxide2 is now up to speed with the official 1.26 IDE, plus a bit more to boot... ;-)

Will look at getting the source up as a zip, and maybe a win32 exe of maxide2.00beta1 this evening.


Mark Tiffany(Posted 2007) [#25]
It's uploaded, enjoy! Please post bug reports on the SF.net pages


Fry Crayola(Posted 2007) [#26]
It's not compiling for me on the Mac, it throws out an error in RequestMultiFile.bmx:

"Expecting expression but encountered '|'"

The line being
?Win32 | Linux

It doesn't seem to like that one bit, compiling with the standard BlitzMax IDE from 1.26.

Short of duplicating the code every time I see this, any solutions?


Mark Tiffany(Posted 2007) [#27]
odd, as it works here on win32. Maybe it's a bcc cross-platform bug?

I doubt think that particular expression occurs very often, try just replacing it with

?Not Macos


Mark Tiffany(Posted 2007) [#28]
Hold on, in my copy, and on CVS, the only example of the above is actually:

?Macos | Linux

Which should be replaced with:

?Not Win32

And the following line needs test replaced with text

This is really odd, as I'm 90% sure it hasn't changed, and it's never caused a problem before...I've fixed it in the CVS on SF.net.


Mark Tiffany(Posted 2007) [#29]
I don't have OSX, so anyone with a mac & maxgui that can let me know details of any other amends / issues on OSX I'd be very grateful!


Fry Crayola(Posted 2007) [#30]
Ok, a few other issues with the compile:

In datanodes.bmx, in the method RefreshView, there's a reference to a variable "name" which should be "_name", I guess.

There's another ?Not Win32 needed in autocomplete.bmx in the Show() method

Both easy fixes.

However, in the Initialise() method of maxide.bmx, there's a line:

If Not options_host.maximised SetGadgetShape window,winsize.x,winsize.y,winsize.w,winsize.h

window isn't a known variable. I've changed that to _gadget instead, which compiles successfully, but the IDE crashes on startup (it's in the BlitzMax folder with the CE_IDE.html file).


Mark Tiffany(Posted 2007) [#31]
Thanks Fry, will look into these, but am away for a few days now. I'm really rather perplexed at how some of these have sneaked through, as these sound like they ought to be breaking on all platforms!

By the way, context menu in the editor is known not to work in the exe / src.zip - just fixed this in the CVS on SF.net.


LarsG(Posted 2007) [#32]
I did exactly as the others here have done, and it also crashes on my iMac aswell..
I posted this bug on the SF page..


Mark Tiffany(Posted 2007) [#33]
Some tweaks applied to the CVS version, any better?


Pit-le-rouge(Posted 2007) [#34]
HI Mark.

Could you also update the complete ".zip" source file ?


Mark Tiffany(Posted 2007) [#35]
I'm going to try to have a bit more of a rummage in the code tonight to try to spot another issue, but intend to post up a beta2 exe & zip soonish.


Abrexxes(Posted 2007) [#36]
I have tested the 2.00beta1 (compiled win32 version)

It takes more than 8 secondes to start (2,6ghz) and the right mouse commands (block comment ...) doesnt work.

bye


Mark Tiffany(Posted 2007) [#37]
yup, right mouse click commands are fixed in the CVS.

Startup has never been that different for me between official & CE versions, maybe there's something lurking in your cfg/ide-ce.ini file? Is it opening a particularly big source file at startup?


Abrexxes(Posted 2007) [#38]
Thanks Mark.

No, i think he updates his keywords every start. Isnt it better to do that manually (to speedup start routine)?

Another little bug. If you change the colors for the screens you must close the options first to see the changes. This can be a little bizar if you dont now that.

cu


Mark Tiffany(Posted 2007) [#39]
Another little bug. If you change the colors for the screens you must close the options first to see the changes. This can be a little bizar if you dont now that.

That's how I'd expect it to work - you get the preview window for the code items, maybe I should add one for the build & tools...

Anyway, the latest code in the CVS has just had committed support for fully customisable hotkeys for all menus + auto-complete. Will post up an exe and source in the next day or two, there are a couple of bugs I'd like to squish first,and I'd like to play with using the latest axe.win32maxgui too.


Abrexxes(Posted 2007) [#40]
maybe I should add one for the build & tools...


No, i mean that you must restart the IDE completely to have this colors uptodate. In this case, the current color is red (as you can see) and not blue.



If you have this squares and they have always the same color that you have at start..for me it is a bug. :)
bye


Mark Tiffany(Posted 2007) [#41]
Now this is weird - I get the opposite problem with latest code!

If I set the colour in the requester, it is NOT shown on the IDE options - the IDE options remain resolutely black and white. However, the colour change selected in the requester DOES get applied in the IDE!!!

The editor options work fine for me, it's just the Tool & Output panels that are screwy.

Will take a look later to see if I can spot the problem. Can you confirm / deny if my statements above reflect what you are getting?


Mark Tiffany(Posted 2007) [#42]
Colours in options fixed in latest code in CVS. No idea how that ever worked!


degac(Posted 2007) [#43]
Can I suggest a little function to add to the IDE?
Why dont' display the GCC/MinGW version installed?
The 'only' problem is find where the user installed the MinGW package. Then with process.mod it should be quite easy get the info version (gcc -v).
More infos about the development environment can be useful.


Mark Tiffany(Posted 2007) [#44]
Not a bad idea degac. I think there's already a check for a MINGW env var that points to where it's installed, so may not be too hard...


Mark Tiffany(Posted 2007) [#45]
2.00beta2 uploaded to SF.net (source and win32 exe).

*Added: Full user customisation of all keyboard shortcuts.
*Fixed: Uncomment block now correctly re-highlights code
*Fixed: IDE option colour selection gadgets now show the selected colour
*Fixed: Occassional hang during debugging
*Fixed: Some source code changes applied to prevent crash on OSX (may not be 100%)
*Fixed: Popup menu items (copy, paste, etc) now work


Fry Crayola(Posted 2007) [#46]
Compiles fine on OSX, but it freezes once loaded.


SebHoll(Posted 2007) [#47]
Compiles fine on OSX, but it freezes once loaded.

If you are on PPC, did you compile it with the latest v1.34 of BRL.CocoaMaxGUI that was added to syncmods a few hours ago?


Mark Tiffany(Posted 2007) [#48]
The freeze appeared to be related to a menu command some way into the app running, so if you could check the latest cocoamaxgui that'd help. There is another known cause for the app to hang on win32 too, which is caused by a bug in BRL.MAxUtil in that the app must be in the blitzmax path (this is a bug in the official IDE too!).


Fry Crayola(Posted 2007) [#49]
I'm on an Intel, but I'll resync my mods and try again.

Edit: syncing didn't give me any new stuff, so I doubt it would work. I'll check after the update is up.


Abrexxes(Posted 2007) [#50]
Thanks Mark, great job!

Ok i now it is a stupid question but....i can not use F5 or F7 to "Build&Run". In the menu.


But i can change the ide-ce.ini to
key_name=Build and Run
key_code=116
key_mod=0


And it works fine :) Bizar..but not a real problem.


remz(Posted 2007) [#51]
I'm using MaxIde CE and my mouse wheel doesn't scroll the code window anymore, Although it still works in the help tab.
OH wait while typing this I just discovered that it does scroll, but only if the mouse cursor is over the 'right-side pane' which have home/projects/etc., and it scrolls it a smooth but slow way.

The real 1.26 MaxIDE handles my mouse wheel correctly. I'm using a Logitech mouse coupled with the regular Windows XP mouse driver.

Since I have the source code I might take a look at it. But just in case anyone else experience the same behavior..
Thanks!


remz(Posted 2007) [#52]
I'm using MaxIde CE and my mouse wheel doesn't scroll the code window anymore, Although it still works in the help tab.



Yeah right it 'doesn't work anymore'. Sure after I broke the code...

Forget that. The wheel works fine. I broke it while messing in maxgui code.
Note to self: think before post.


degac(Posted 2007) [#53]
Only for the italian guys...I have made a 'language pack' for the MaxIDE v2.beta, you can download from here
http://www.graphio.net/download/MaxIDE2_language_pack_italiano.rar

PS: Not all translated - mainly some errors, all the rest will be translated.


degac(Posted 2007) [#54]
I have done some experiments to find the current version of MinGW...

Basically I retrive (via getenv_() ) where MinGW is installed and then I ask to the programs what version they are [see AskVersion function - every .exe has is own way to return its version's number, -v, -V, --version and so on].
Moreover I discovered that in some include (_mingw.h and w32api.h) there are other version information.
Finally I checked FASM version.

It works.

edit:

A little moment of inspiration and I made a 'modified' version of MaxIDE 2.beta that shows the MinGW versions - sort of - (for Win32 only - not compiled on other platform so maybe some errors can rise...)
here I put the link http://www.graphio.net/download/maxide2.rar where you can find the source modified.
Just a little contribution...


degac(Posted 2007) [#55]
A new little change to Beta version - you can download it from here http://www.graphio.net/download/maxide2.rar
I've added UPX support for builded .exe (tested only on Win)
This modification is *not* very well designed...I have added a new voice under 'Tools' menu (UPX and Icon support)
At the moment it allows to enable/disable UPX compression - only for BUILDING, not BUILD & RUN. It is possibile to set the path (of course) of UPX and the parameters (default -9 best compression).
The bad things:
1. at the moment there is a new file additional.cfg file where I stored the UPX informations (compression, parameters, path...) - if and when I understand how to use the default ide-ce.cfg file I'll move all the things...

2. to run a separate process for UPX I added a delay 1000 - and my own function to run the new process. Every other solutions failed for me. If you can get better, you welcome...

3. The 'Additional tool' should be 'UPX &Icon support'. I'm working on it (I made some tests for a default icon or user select icon and so on)

4. This changes - at the moment - works ONLY for win32...


doswelk(Posted 2008) [#56]
I am having trouble getting this to work on Linux (Ubuntu 7.04) it is not my main system I'm just trying to set up cross platform testing....

The version 1.15 CE version runs apart from no help (I think this is due to the new docs format)

What I am really trying to get to work is the version 2.

It complies without error message but will not run, no error messages nothing (a bit like 1.15 does until you do the "sudo ldconfig /usr/lib/firefox" command)

When running from the terminal I get the following message:

appstub.linux signal handler 11

Update: when running in debug mode (why didn't I think of that before!) the line it fails on is:

bbSystemSignalHandler SIGALRM,TLinuxTimer.SignalHandler
Any help would be helpful really!


Wiering(Posted 2008) [#57]
There is a (small) problem with the Find / Replace dialog: if you change the text at "Find what" and press Enter right away, it searches for the text you had there before. If you *click* the "Find next" button, it does work.


slenkar(Posted 2008) [#58]
the keywords are not highlighting for me,
any idea how to fix it?


Mark Tiffany(Posted 2008) [#59]
It should just work. If you have a working copy of the standard ide, just copy the CE IDE into the same folder and run it from there.

Rebuild Docs should rebuild the command keywords too, so that is worth a shot...


degac(Posted 2008) [#60]
Hi
I've just re-installed BlitzMax 1.28 (R44) + MaxGUI( R29)
All the samples works perfectly, my others projects work too.
But I have a problem with the MaxIDE Community Edition... I changed BRL.Maxgui to MaxGUI.MaxGUI, Import MaxGUI.Drivers, but I get these errors



Any ideas?


slenkar(Posted 2008) [#61]
thanks for the help, i installed the latest version now,

im using windows,
types work well in the quick-view column
but functions fail to appear in most cases

when i create a type first and create a function underneath the function fails to appear,
then I put the function on top and it appears.

strangely if I delete either the function or the type they will not go away-unless I reload the file


Yan(Posted 2008) [#62]
This was actually effecting global, constant and function declarations. :o/

Fix (hopefully) up on CVS.


slenkar(Posted 2008) [#63]
thanks,


slenkar(Posted 2008) [#64]
another couple of minor issues I noticed:

the find/replace tool doesnt allow you to change the case of a word if you have done it already.e.g. "Gun" to "gun"

it always chooses the instance of the word from the drop-down menu that has one case, therefore making it impossible to change the case of a word.-if you already changed it therefore it gets added to the drop down menu.

When I close the find/replace dialog about 1 in 5 times in minimizes the whole IDE.


Yan(Posted 2008) [#65]
Please post bug reports and feature requests here...

https://sourceforge.net/tracker/?group_id=154065

Thanks. :o)


degac(Posted 2008) [#66]
To the admin/progs of MaxIde CE.

I'm using MaxIDECEBeta2(+changes made by) me since 3 months now, and I think it is a great program.
It would be great to make a 'snapshot of the situation/wip' today: what is not working, what are the wips and so on
I know the bug reports on sourceforge...but as this IS a BlitzMax product I think it's not a bad idea to report here some info.

PS: the only 'real' bug (for me) is type/function/method... grouping in the navigation tree.


Mark Tiffany(Posted 2008) [#67]
I'm using MaxIDECEBeta2(+changes made by) me since 3 months now, and I think it is a great program.
It would be great to make a 'snapshot of the situation/wip' today: what is not working, what are the wips and so on
I know the bug reports on sourceforge...but as this IS a BlitzMax product I think it's not a bad idea to report here some info.

To be honest, there's not much development going on, if any - real life is taking up most of my time, and I've been the main contributor to date. So the bug reports that you see on sf.net (link in my sig) are the closest to a status report that you'll find.

The only thing I've done recently is try to track down memory leaks and move the code to the newer maxgui module (which I checked in today).

There is a new textarea in sf.net that is waiting to be integrated, but it's not a small job...

PS: the only 'real' bug (for me) is type/function/method... grouping in the navigation tree.

Can you explain? Do you mean the issue with the code navigator losing track of where to jump to after editing?


degac(Posted 2008) [#68]

Can you explain? Do you mean the issue with the code navigator losing track of where to jump to after editing?


Everytime I load or I type in the IDE I have some error in collecting info about type/function
'test
Type mytipe
	Field one
	Field two
	Field three
	
	Function Create:mytipe() 
		Local t:mytipe = New mytipe
		Return t
	End Function
	
	Method show() 
		Print one
		Print two
		Print three
	End Method
	
End Type

mine() 

Function Mine()
	'This is a function - NOT related with Type
End Function

The type structure is correctly interpreted (field, methods and functions) but the function Mine() is not related with the type and should be under the 'Function' section, like in the image below.



Maybe I'm using an older version...

EDIT: another little bug - but annoyng: if you are using a mod WITHOUT source (like for example LeadWerk Engine) you will have the usual Third Party Modules - LeadWerks Engine with the following links:
- global
- function
- types
- modinfo
- source

The problems is when you click on the SOURCE link: obviously there is no source to see, but MaxIDE CE will exit without prompt or advise, while the standard one do nothing but it still running.


Mark Tiffany(Posted 2008) [#69]
I'll look into this later - there are some issues with the nodes that I'm tracking down. I've nailed a few nasty mem leaks this morning, so I feel like I'm on a slight roll...

I notice that your menus are localised - italian? Fancy taking a look at the language files and providing an Italian localisation?


jsp(Posted 2008) [#70]
Thanks Degac!
Actually i thought all the functions were not listed at all because of that bug, but now i saw your example and found all my functions in an old type i didn't work on for quite some time and thus realize they were just wrong sorted... I even started to set some markers to find my stuff.

This bug and the wrong jump after edit are the most annoying ones i am struggle with.


degac(Posted 2008) [#71]

I notice that your menus are localised - italian? Fancy taking a look at the language files and providing an Italian localisation?


Here the 'package' (default+italian)
http://www.graphio.net/download/MaxIDE2_language_pack_italiano.rar


Yan(Posted 2008) [#72]
@Degac - If you care to look a couple of posts up, you'll see that the function declaration bug has already been fixed. :o)


degac(Posted 2008) [#73]
Oops! [I have said too 'Maybe I'm using an older version...' - I have downloaded the .zip version age ago!]
I need to setup the CSV to install an up-to-date version
Thank you

edit:

Ok - My ignorance is bigger than I believe.

I downloaded and installed TortoiseCSV but I have problem to 'download' the content. In effect I can't download anything...
Any guide?


Yan(Posted 2008) [#74]
Right click wherever you want the project folder to be created and select 'CVS Checkout...'.

In the 'Checkout Module' window, make sure the 'Module' tab is selected and fill in the following fields as shown:-

CVSROOT: :pserver:anonymous@...
Module: maxide2

Now hit ok.

After a bit of downloading, a new folder called 'maxide2' should have been created which contains all the required source and media files.


Mark Tiffany(Posted 2008) [#75]
Or use the integrated CVS support in the IDE. Add a project, specify anonymous as the user, blitzmax-ide.cvs.sourceforge.net:/cvsroot/blitzmax-ide as the url, and maxide2 as the module. Create a Maxide2 dir to stick it all in and hit check out. You can then get the latest version by right clicking in the project explorer and selecting Update. I think you'll need to need to install a command line CVS tool like CVSNT.


degac(Posted 2008) [#76]
Thanks!

G R E A T

the CSV tool integrated in MaxIDE is very useful: I must read *better* the help file the next time!!!

ps: with the new MaxGUI it looks better than before!


SebHoll(Posted 2008) [#77]
with the new MaxGUI it looks better than before!

Music to my ears!


Yan(Posted 2008) [#78]
If you do have TortoiseCVS installed and you want to manage CVS projects via MaxIDE, you just have to ensure that the file path to TortoiseCVS (default = 'C:\Program Files\TortoiseCVS\') is included in your 'PATH' environment variable.

[edit]
This wont work for TortoiseSVN.
[/edit]


Mark Tiffany(Posted 2008) [#79]
Updated version of code on sf.net - you'll need the very latest version of maxgui off SVN too though. No updated exe just yet as I really need to squish some evil memory leaks first.


Yan(Posted 2008) [#80]
Ooo...Pretty. ;o)

There seems to be a problem with the output panel (added a report to the tracker).

[edit]
The app icon appears to have gone AWOL?
[/edit]


Mark Tiffany(Posted 2008) [#81]
Yes, the app icon has vanished - it will now need to be hacked in using reshack or similar after compiling. This is due to using the new maxgui module (see SebHoll's thread).


Brucey(Posted 2008) [#82]
Can't you move the IDE to SVN from CVS please?


SebHoll(Posted 2008) [#83]
Can't you move the IDE to SVN from CVS please?

Yes please...

@ Mark:

The latest version of language.m from the CVS respository, doesn't have the necessary changes for the new MaxGUI layout structure.

You need to change:

#include <brl.mod/maxgui.mod/maxgui.h>
...to...

#include <maxgui.mod/maxgui.mod/maxgui.h>
In addition, I think we may have overlooked the fact that CocoaMaxGUI wasn't properly storing a handle to the pixmap in TIconStrip and so ExtractIconPixmapFromStrip() (your favourite function) was choking trying to invoke a method on a null pixmap.

For those who are wanting to compile MaxIDE CE with the latest MaxGUI release, try replacing TCocoaIconStrip in cocoagui.bmx with the following until it is committed to SVN:




SebHoll(Posted 2008) [#84]
Can I also suggest that when calling CreateProcess(), you put quotes around the command to be executed, as MaxIDE CE refused to open as it couldn't find bcc when the BlitzMax install is in a directory structure with spaces in it. Adding the quotes fixed the problem, e.g. on line 223 of maxide.bmx:

process=CreateProcess("~q"+cmd+"~q",HIDECONSOLE)
Those fixes, seem to get MaxIDE CE to compile and run, but I've noticed a few problems:



Although the menu icons work perfectly, the tabber item icons aren't visible and the treeview is empty in the Help tab. Also, there is a memory usage window which I assume you are using to debug the current version. I'm not sure whether this is because of my dodgy OS X BlitzMax install or if it is a problem with the CE IDE, or CocoaMaxGUI...

Anybody else fancy testing out the CVS version of MaxIDE CE on OS X?


Mark Tiffany(Posted 2008) [#85]
Ta Seb, will apply the tweaks tonight. And "oops" on the ExtractMyLovelyIconFromThatThereIconStrip mac thing...

@Brucey - I guess I could look into moving from CVS to SVN, although I wasn't sure there was much benefit to be had in doing so, and thought it could be potentially painful. So...convince me! ;-P


SebHoll(Posted 2008) [#86]
Mark: Whoops, must have just missed you - see my previous post for a bit more info...

@SVN: How about the fact that most BlitzMax users will already have SVN if they are using the dev version of the modules, whereas I had to find and install a CVS client just for MaxIDE CE (and it's a horrible, clunky client too compared to the simplicity of TortoiseSVN). Therefore, the source of MaxIDE CE will be available to a lot more people... :-P


Mark Tiffany(Posted 2008) [#87]
There is TortoiseCVS too... and CVS integration in the CE IDE...but I guess I agree that it would better for Blitzers to just need one (SVN) rather than two (SVN+CVS)...


Mark Tiffany(Posted 2008) [#88]
Okay, fixed the code changes for macos in CVS. The memory window should only appear in debug mode, and yes, it does highlight the nasty mem leaks I'm tracking down, mainly to do with treeviews.

In terms of the two visual bugs with tabs not appearing and help tree missing, they seem fine on XP...

Are you using the version on CVS or the zip I sent a few days ago? If it's the zip, I'm wondering if the tabber issue is because there are icons on the tabs now? i.e. is there a bug in setting the icon for tabbers on macos? Could it be related to the problem in ExtractIconFromIconStrip? i.e. if you pass a duff pixmap, is the tabber getting confused?

No idea what might be the issue with the help treeview - are the other trees working?


SebHoll(Posted 2008) [#89]
is there a bug in setting the icon for tabbers on macos

Yep, I've spent the evening fixing various Cocoa bugs, so hopefully I'll have a fix release to commit tonight...

Edit: Just sent them for committing...




degac(Posted 2008) [#90]
Thanks to all!
(PS: I agree to move to only one download-system and as SVN is 'standard' for Blitzmax....it seems the logical choice)


peltazoid(Posted 2008) [#91]
With the latest build of MaxIDE, the output window does not update until you click on it with the mouse. then it will update with whatever has been sent to the console.

Cheers.


Mark Tiffany(Posted 2008) [#92]
pelatzoid, what platform - win xp seems okay here.

For the benefit of anyone wanting to compile the CE IDE against the new MaxGUI release:

The 2.00beta2 (exe & src.zip) still uses the old brl.maxgui modules. The code in the CVS is now working with the new maxgui.drivers on Windows and (based on Seb's feedback above) on Macos, but am still fighting Linux & Gtk (I think fltk is okay...). Just as soon as I sort gtk (and ideally one nasty memory leak), I will post up a new exe & src.zip.


peltazoid(Posted 2008) [#93]
I'm on WinXP using the latest code from CVS (well as of my last post), complied against the latest code (rev 32) of maxgui again. (compiled with V1.30 beta)

Just tested it again, I used the slidertest example. when the maxide window is defocused the nothing is echoed to the output window until the maxide window is clicked on again.

Also with simple loop which prints a string to the console via print and debuglog, it takes a while for the text to be displayed. also it seems to take longer to compile.

I have tested it against V1.30beta and V1.28

Also the last stable IDE works fine. i.e text is echo'd immediately.

Cheers.


plash(Posted 2008) [#94]
After compiling 2.00 beta 2 with gtk, the ide closes with this message "appstub.linux signal handler 11" (right as it starts up).
EDIT: Turned on debug mode and changed something to make it work, since i am using gtk its not supposed to look like crap right?


Mark Tiffany(Posted 2008) [#95]
After compiling 2.00 beta 2 with gtk

You got further than me then! I think I need to do a clean install / uninstall, then I can see what's up. And no, it's not supposed to look like crap!
when the maxide window is defocused the nothing is echoed to the output window until the maxide window is clicked on again.

Ooh, same here. That's odd, I'm sure it wasn't doing that a couple of days ago - must be a recent change, but I can't think what....hmmm, I did remove a couple of seemingly redundant Refresh calls...will investigate...


plash(Posted 2008) [#96]
I should also note that there is no code highlighting, and whenever you try to use the help tab, it opens http://www.home.com in firefox.

EDIT: the 1.15 maxide binaries work, though code highlighting is all messed up.


Mark Tiffany(Posted 2008) [#97]
Output issue fixed. I had removed a timer that I didn't know what it did, which I've now added back into a more appropriate place (and made it run only when actually running something!).

Right, onto the linux / gtk issues...


Mark Tiffany(Posted 2008) [#98]
Okay, Linux / GTK gets a bit further using the very latest CVS version of maxide2, but still not right.

You need to apply the fixes to Brucey's GTK implementation as documented here:

http://www.blitzbasic.com/Community/posts.php?topic=76522

And then build modules & build the app.

I get a hung window and lots of "gtk layout_move" errors now...but it *is* progress!

Any help appreciated!


Grisu(Posted 2008) [#99]
Will the IDE binaries on http://sourceforge.net/ be updated in a while? I'd love to test the IDE.


peltazoid(Posted 2008) [#100]
from what has been posted, i'd guess when mark has solved the gtk bugs. :)

If you want I email you the exe, build from the latest CVS under Blitz 1.30beta.

Cheers.


Grisu(Posted 2008) [#101]
Send it [win32 exe] over, thanks. :o)


peltazoid(Posted 2008) [#102]
sent


Mark Tiffany(Posted 2008) [#103]
from what has been posted, i'd guess when mark has solved the gtk bugs. :)

Yup, I'd like to get it running (at least in a vaguely usable form) on linux / gtk, and also there is a nasty memory leak that I'd love to squish before posting a new set of binaries / src.zip. Although they're beta's, they are supposed to be *usable* betas!!!

(I'll also start a new thread then too as this is getting long-ish...)


plash(Posted 2008) [#104]
I hope there will be a CVS tutorial for linux because I am so lost with it.


Mark Tiffany(Posted 2008) [#105]
I hope there will be a CVS tutorial for linux because I am so lost with it.

SF.net has a decent guide. It's one command line. Seriously though, I may well move to SVN anyway once I get the next version out. Speaking of which...

FLTK & CE IDE seem to be okay on Linux. It's not pretty, but it is running (from a VERY quick inspection) as expected.

GTK & CE IDE are not happy together on my Linux box because of an issue between GTK & pub.FreeProcess (see the *this* GTK thread in Brucey's modules). As such I can't progress any further with GTK until that issue is resolved.

GTK & CE IDE might possibly work on some linux distro's (I think it may be that 7.10 has the tickless kernel thing).

For now, I'm going to focus on fixing memory leaks, hopefully someone else (Brucey? Pretty please?) can find the issue between gtk & freeprocess while I get on with that.


Mark Tiffany(Posted 2008) [#106]
For those interested, the version on CVS now seems to have most of the memory leaks ironed out, and issues with the code / todo trees (touch wood) sorted.

Grable's also done some fantastic work to get C, C++ & HTML code editing / highlighting working, so things have moved along somewhat.

There's a whole bunch of other fixes & code tidying (i.e. speed ups) in there too, so I'm hoping to get another build posted soonish (like in the next week or so). And once this version is out I will probably move over to SVN instead of CVS.

Linux / GTK is still looking a little flaky on some systems (i.e. my own!), so will be trying to resolve those issues if I can in the next week.

For those that can, I'd be grateful of any feedback in this thread.


SebHoll(Posted 2008) [#107]
Cool!

the version on CVS now seems to have most of the memory leaks ironed out

Yep, sorry again about that. I'm pushing Mark to commit the latest version of MaxGUI.Win32MaxGUIEx to SVN so the other MaxGUI'ers can benefit from the fixes.

And once this version is out I will probably move over to SVN instead of CVS.

Looking forward to it - just wiped my PC and have got a fresh install of Vista so I only want to install as few programs as I can get away with (which, at the moment, is BlitzMax, MinGW, XVI32, TortoiseSVN and WinMerge - my programming toolkit). :-)


Mark Tiffany(Posted 2008) [#108]
Yep, sorry again about that. I'm pushing Mark to commit the latest version of MaxGUI.Win32MaxGUIEx to SVN so the other MaxGUI'ers can benefit from the fixes.

Well, several of the memory leaks were in the IDE code, not all are down to maxguiex! (In fact, possibly just the one...)


degac(Posted 2008) [#109]
For everyone interested I've updated my variation of MaxIDE Community Edition (last version I used was 04-apr-2008)
Here you can download source here and here you can download the .exe (win32).
Plug In

Of course to compile the MaxIDE CE you need the MaxGUI module.

Main differences are:
- search help function integrated into the index.html page (based on Javascript)
- UPX + IconSupport integrated: when activated in BUILD mode you can add IconSupport and compress the .exe with UPX (both only win32 at the moment).
- Error List: to see an history of the errors and bugs
- PlugIn support: basically it is possible to run external program to do some task.
At the moment I created these 3 plugins

1. Version : it shows the mingw version actually installed
2. Find-In-File: it is based on the SebHoll's work on MaxIDE official Find-In-File function.
3. Resource Viewer: it shows and plays images and/or sounds that are indicated in the source.

Here you can view (via YouTube) my MaxIDE working...

HELP
PLUGIN

Byez


SebHoll(Posted 2008) [#110]
Good ideas... A few suggestions:

- UPX + IconSupport integrated: when activated in BUILD mode you can add IconSupport and compress the .exe with UPX (both only win32 at the moment).

How about adding XP manifest support too (I assume you are using windres to compile an object file, and so would be extremely easy to add)?

- search help function integrated into the index.html page (based on Javascript)

That's a nice touch!

- Error List: to see an history of the errors and bugs

As is that!

3. Resource Viewer: it shows and plays images and/or sounds that are indicated in the source.

I should perhaps mention that tabber item images on OS X are limited to quite a small size and therefore they will be scaled down in your resoure viewer's tabs.


degac(Posted 2008) [#111]
Thanks.
I will investigate on XP manifest support.
For the tabber item images it was an experiment - good to know the limit on MacOSX.


Mark Tiffany(Posted 2008) [#112]
Particularly like the search tweak.

I've applied quite a few fixes to the code since the 4th, memory leaks, dodgy editing behaviour, such that I'm pretty happy the code is now stable, on win32 at least.

So, assuming you don't have an issue degac, I'm going to look into merging some of your tweaks in...


degac(Posted 2008) [#113]

So, assuming you don't have an issue degac, I'm going to look into merging some of your tweaks in...


No problem for me, but my code is a good example of 'spaghetti-code'...:D


Mark Tiffany(Posted 2008) [#114]
No problem for me, but my code is a good example of 'spaghetti-code'...:D

Don't worry, I'll be picking and choosing carefully! ;-)

I might as well post up a new version of the source and compiled win32 exe tonight minus these extras (as things seem quite stable, and have moved on a lot since the last version), hopefully there'll be something to play with in a few hours time...


Mark Tiffany(Posted 2008) [#115]
New version uploaded - 2.00beta3.

Again just a copy of the source zip and win32 exe available at the moment. If anyone wants to volunteer a version compiled for OSX or Linux, feel free to email me.

Win32 Executable
Source ZIP


Change Log

Added:
- Basic HTML, C, C++ code highlighting, including limited auto-complete & todo list support
- Undo behaviour improved to prevent storage of lots of single character changes
- CVS / SVN now asks if you want to delete existing working copy if directory already exists
- Italian localisation
- Window, tab and menu icons
- Undo & Redo added to the toolbar
- Toolbar now shows keyboard shortcuts
- Migrated code to new MAXGUI.Drivers module & new win32 implementation

Fixed:
- Fixed generic editing functionality (such as Find & Replace) in non-BlitzMax files
- Fixed all (I think!) instances of code & todo nodes not updating / linking to correct location
- Fixed Memory leaks in Undo history, save, IDE options, code & todo trees
- Fixed various instances of code highlighting / auto-tidy / indent screwing up e.g. on last char in file and when using backspace
- Various instances of editor popping to the front fixed
- TextArea mousepointer now correct
- Auto-Tidy & Auto-Indent no longer applied in Rem/EndRem blocks
- Removed hard-coded F5 & F7 hotkeys - can be set as required in IDE options
- Localisation selection in IDE options now works
- Removed hard-coded FLTK references such that it compiles on Linux GTK
- Trapped error when help file not present
- Prevented lock-up if not run in BlitzMax directory

Known Issues:
- Lock-up on Ubuntu 7.10 due to conflict between Brucey's GTK module & pub.freeprocess.
- Some tab & font size combinations give inconsistent text layout. This will be an issue until a new codearea is implemented, or BRL.MaxGUI.TGUIFont adds a width.
- Auto-complete doesn't show at cursor position on Mac or Linux due to no known means of obtaining graphical cursor position
- There are still some small memory leaks that need to be pinned down


LarsG(Posted 2008) [#116]
Nice.. testing it now..


btw: you've got a handful of empty CVS directories in the binary DL..


Mark Tiffany(Posted 2008) [#117]
New thread here