dragoness_e: (Default)
For those of you that have totally forgotten this project, it's the DAOC mapping utility that I took over maintenance a long time ago, decided to overhaul, and fell off the Earth after Hurricane Katrina. I'm finally back to work on it; it was so close to release 3 years ago that it's heart-breaking; I'm sorry I never did put it out.

Continue here for those interested in DAOC MapperGUI 2 )
dragoness_e: (Default)
Okay, been poking at the Windows version of MapperGUI 2.99-beta and the newer incarnations of Python and wxPython.

1) I can't use Python 2.4 on the Windows side. I'm still running on Windows 98, and Python 2.4 extensions require MSC 7.1 & .NET SDK to be compiles. .NET SDK requires Win2000/WinXP/etc. Not an option for Windows 98. So, Windows version of MapperGUI is being tested with Python 2.3; I can't build a binary dist for Python 2.4. Beta testers, if you have the .NET 1.1 SDK and want to build the extension libs for the Windows version of MapperGUI 2.99 using Python 2.4, go for it! I just can't do it or test it myself, so my binary distros will be Python 2.3 based.

2) On Windows, wxPython with Python 2.3 has some flaked-out sizing bugs on the notetab controls, and looks like crap. Don't use wxPython with Python 2.3 on Windows 98 with MapperGUI 2.99-beta. I have no idea how some other combo, like wxPython with Python 2.4 on Windows XP, might work. Can't test it either, for reasons mentioned above. I'm testing with wxPython, which is the version I happened to have installed for the last while. It looks fine. If you find some earlier or later version of wxPython that doesn't turn into a pumpkin on the notetab controls, I'd like to know about it. If everything works peachy-keen on Windows XP, I'd like to know about it.

3) PIL 1.1.5 seems to work okay in both Windows and Linux with whatever version of Python & wxPython.

4) Using the latest everything on Linux (Python 2.4.1, wxPython-, PIL 1.1.5) works fine. Looks good, builds extension libs okay, etc. I like Linux.

View this post on my blog

dragoness_e: (Default)
Okay, once I scrub out a few obvious bugs discovered during the last bit of alpha testing, I'll need some beta testers for MapperGUI 2.99b.

Requirements for beta testing:

  1. Python 2.3.4 or later installed

  2. PIL installed

  3. wxPython installed, plus whatever wxPython needs

  4. Must be able to manage without correct or coherent documentation

  5. Must be able to manage your own Python set-up.

Note that release version (for Windows) will have somewhat less stringent requirements, if I ever get py2exe properly integrated. Linux users get to manage Python libs themselves, as always. Beta code is subject to change and mutilation. It may eat your data, so work with a copy or backup of your existing stuff. (It doesn't, as far as I know, but I might manage to introduce an interesting new bug in the course of fixing/updating others).

What you will be testing will not have all the features of the release version; but I need to make sure that the core features are rock-solid. Oh, and I'm doing a last-minute change to how mapper.py is called that will probably screw up everything anyway, and we'll start over from square one with 3.00.01-beta..

If you are interested, e-mail me.

View this post on my blog

dragoness_e: (Default)
The MapperGUI overhaul is progressing apace. I've got most of the basic configuration dialogs done and working. What remains to be done: captions, install procedure, importing old ini-files, making dungeons work, various add-ons, actual help files. I also have some screenshots for your perusal.

Read more... )
dragoness_e: (Default)
Following the structure of a previous post, here's what's happened so far:

  • Structural Improvements - I've re-organized both the GUI and mapper itself along more modular lines. I've created proper __init__.py packages.  I will continue to do so with the overhaul.

  • Installation improvements - 'python setup.py build' and 'python setup.py install' will work when the next version goes out. I've already determined that distutils.py will properly build an extension library (using Visual C++ under Windows/gcc under Linux) without impertinent suggestions from me. Turns out I don't need a custom Makefile, I just need to give the right arguments to bdist_win...

  • Switch to a more capable GUI toolkit - Done that. I'm re-writing MapperGUI using wxPython instead of TkInter.  The wxPython toolkit is enormously more capable.

  • Overhaul the interface - I am in the process of doing that with the re-write using wxPython.  I will be using a notetab-type control for the mapper settings, and MapperGUI's own settings will be tweakable through a preferences dialog.  A lot of stuff that was hard-coded before, such as the location and name of mapper.py, the name of the intermediate output files, the default output directory, the command-line arguments for mapper, etc, etc, etc, will be configurable. In theory, you could drop in a different command-line driven mapper program as the backend. In actuality, it would have to take very similar arguments and settings, but, oh well. The new settings file will be in standard INI-file format (for now).

  • Overhaul the Caption Editor - I'm still just thinking nice thoughts about this, but it will be addressed after I get the basic re-write in order.

  • Hook in additional utilities - some of this is being built in already, as they are side results from processing DAOC game data files just to load the menus and draw the maps. Look for a 'Tools' or similar menu option in the versions to come.

  • Draw dungeons and Cities - I'm loading them into the menu, but disabled for now, as the capability to draw them is not going to be addressed until the basic re-write is done.  At least you can see their names and wonder what the heck some of them are for.

  • Update Help System - wxPython supports a beautiful HTML help system in both Windows and Linux. I'm using it. I have the framework working, but need to actually write some new help files (For testing purposes, I just cut and pasted from the relevant pages on Rath Nathrach)

...and there you have it. Testing this sucker is going to be a whole 'nother issue.  If I put a public beta version up, I'll need to make very clear that it is beta code, and likely to be buggy; I don't want people thinking it sucks because it doesn't work right when it isn't even finished testing.
dragoness_e: (Default)
One other candidate for a 'more capable' cross-platform GUI package is Tix.  The Python interface comes as a standard part of the Python library, but you have to install the Tix shared libs yourself.   One pro, one con.  It's an extension to Tk (and thus TkInter), so uses the same methodology as the existing MapperGUI controls. Another pro. However, it doesn't offer that many more new controls; notably, no help subsystem or HTML/RTF browser that I could use to build one. Another con.  Finally, Tix is as slow as mud on Windows Python... maybe it's that 'interpreted code invoking another interpreter to interpret code' thing. Another big con.


  • Qt + PyQt:  Fast (if Kort's Spellcrafter is any indication), but working Windows version hard to get hold of.  I haven't gotten newer versions to run succesfully on Windows 98.  Not a good choice for cross-platform use.
  • WxPython: Fast, works on both Windows and Linux, very rich set of controls and widgets. May be somewhat complex to install; hopefully py2exe can help me package it all up into one installation package for end users. May be very complex for programmer to switch to--or not, as is structurally similar to MFC, which I have programmed with before.
  • Tix: Slow, works on both Windows and Linux, small set of controls and widgets. Very complex to install, as requires re-compiling Tcl, Tk and Tix from source--there are NO binary distributions available.  Only feasible on Windows side if py2exe can package up all the necessaries for end users.  Structurally similar to TkInter, which is already used in MapperGUI--but I'm not that familiar with it.
As you may have guessed, so far I'm leaning toward WxPython for cross-platform use.
dragoness_e: (Default)
To everyone who wanted to know if I can make it work with Catacombs: yes, DAOC MapperGUI will render Classic through TOA zones from Catacombs just like it did with the TOA client. Nothing has changed there. However, it will not render dungeon and city zones any better than it ever did, which is to say, not at all. Unfortunately, ALL of the new Catacombs zones are "dungeon" and "city" zones.

I am working on some improvements to DAOC MapperGUI. When I took over maintenance of the program from the original author.... well, as a Python programmer, I'm a great C/C++ coder. It turns out I knew only a little less about Python than the original author of the GUI interface--there's a lot that can be improved using really nifty Python features I knew nothing about before, but have been learning about from studying the code of Python coders who know what they are doing. Coders like Kort of Kort's Spellcraft Calculator fame.

Here's what I have in mind:

Read more... )

April 2019

 123 456


RSS Atom


Style Credit

Expand Cut Tags

No cut tags
Page generated Apr. 18th, 2019 02:49 pm
Powered by Dreamwidth Studios