[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Fwd: [Eliot-general] some technical and UI questions

From: Olivier Teuliere
Subject: Fwd: [Eliot-general] some technical and UI questions
Date: Tue, 14 Dec 2010 10:46:43 +0100

I forgot to put the mailing-list in Cc...

---------- Forwarded message ----------
From: Olivier Teuliere <address@hidden>
Date: Mon, Dec 13, 2010 at 11:11 AM
Subject: Re: [Eliot-general] some technical and UI questions
To: address@hidden


On Sun, Dec 12, 2010 at 11:03 PM, Bruce vanNorman
<address@hidden> wrote:
> Background: My wife loves Scrabble. Her platform, like mine, is Fedora
> (FC-13).
> ---
> I have reliable, repeatable installation instructions for eliot on Fedora -
> about 1/2 a page. If anybody cares, I can send them somewhere.

Yes, please send me these instructions and I will put them on the website.

> UI - the computer strength setting seems to have no effect.

You probably have an old version of Eliot, because this bug was fixed
in version 1.12.
For example, playing a Duplicate game with 2 computer players, one at
level 100 and one at level 25, should give scores such that the 2nd
player score is (a bit more than) 25% of the first player score.

> UI - the ability to exchange tiles does not function on any of my Fedora
> hosts.

You need to enter some letters from your rack in the "Change letters:"
field, for the "Change" button to become active. If this still doesn't
work, could you give me more details on what is happening exactly
(ideally, with a screenshot and/or a way to reproduce the issue)?

> Is there any reasonable way to saw the lady (eliot is a lady?) in half? I
> would like to rework the UI in wxPython without modifying the C++ core.
> Specifically, my wife is handicapped and must avoid certain UI
> characteristics. Any code I might develop will be GPL. I am familiar with
> Google code & subversion and am willing to either, go it alone or as part of
> a team.

Eliot is made of 3 layers:
 - the dictionary layer, potentially reusable in other projects
 - the engine layer, using the dictionary
 - the UI layer, using the engine and the dictionary

So you should be able to develop another interface (or modify an
existing one) without too much trouble.
In particular, you should have a look at the PublicGame class, which
is supposed to expose the core functions in a clean way.

Unless you really want to use Python, I advise you to use Qt for your
new interface, since it would allow you to reuse several already
existing components.
BTW, what are the UI characteristics that you want to avoid?

> A generic practical interface for alternative UI development might be a good
> starting point. There is nothing special about Python in this regard.
> ---
> I am working on the early stages of an Email Scrabble (uses wxPython) with a
> grandson (in college). Platform agnostic, no AI. PS. Personally, I do not
> Scrabble. My wife, children, and grandchildren do.
> ---
> My preference would be to "plugin" into the C++ engine - where "main"
> remains with C++. This is not a big issue. Whatever is the most straight
> forward approach, is OK by me.

The engine is currently more a library than a plugin framework, so you
will need to have the "main" function in your UI code.

> I have not developed a Python - C++ interface wrapper yet; but I can learn.
> There are plenty of recipes on how to go about it - and I do program in both
> ANSI and K&R "C" {not much love for C++, though I can read it well enough}.
> ---
> I have the pyScrabble source. It is not the right architecture. It is "real
> time". The "twisted" framework is not suitable for solitaire or Email use.
> However, I am not above borrowing code from it for my purposes.

In case some changes are required for Eliot to suit your needs, just
let me know, I'm always open to improving it.

> A common, published, interface architecture is always a good thing.

I'm not sure to understand what you mean here. Could you please be
more specific?



reply via email to

[Prev in Thread] Current Thread [Next in Thread]