Ultra Beginner Question/Request
Len Morgan
len-morgan at crcom.net
Fri Feb 4 17:24:51 EST 2005
I have no doubt this is the right place to at least get started! The
project I'm trying to convert is large but I think it is also typical of
a lot of moderately complex application so I hope others can benefit
from this discussion. The program has a database on the backend and is
used to manage (private) prisons. The GUI consists of a menu at the top
of the screen, a toolbar that includes a combobox to select what the
user wants to do, a "current inmate" frame which is only a little taller
than the text and labels that are on it, a large "main area" where
different things go depending on what you select from the combobox, and
at the bottom a status/progess bar. In a prior version of this program,
the large main area had a tabset control to was used to select between
the various tasks that a user wanted to do. As the program grew, the
tabset had to be replaced with the combobox on the toolbar because it
gave me an (almost) unlimited number of tasks (RR equivalent to cards I
think). The tab control I had could not scroll if it got too big (which
it did). The tool bar also has 4 buttons on it that are used by all of
the tasks in the work area ("Add", "Delete", "Save" and "Cancel
Changes"). What routines are called when one of these buttons are pushed
depends on which task screen you're looking at when it is pressed. This
sounds a little confusing but once you teach a user that pressing the
"+" button adds one of whatever you're looking at (i.e., inmate, charge,
program review)), they pick it up pretty quick. Now, for an additional
wrinkle, in a prison environment (or really any other reasonably large
organization), you need to have different rights for different people.
In my program's case, no one but medical staff can look at an inmate's
medical information, and so on. When the program is first started up, I
get a username and password, and after authenticating them against my
database, I get a "profile" that has been assigned to that username
(from the same database). My tcl code has a script for each profile
(medical clerk, mailroom, records clerk, case manager, etc) that loads
("sources" in Tcl lingo) the scripts for each of the tasks they are
allowed to preform along with certain permissions on those tasks. By
that I mean, everyone is allowed to look at a certain screen of inmate
information but only records clerks are allowed to change it. There is
also a menu file that creates the top level menu structure also based on
the user's profile. Again, there are a set of menus that everyone gets
and then there are different ones added depending on the profile
selected. Ok, that's how I'm doing it now in Tcl/Tk. I'm not expecting
anyone to build this for me but I'd like a little direction on how to
attack this in RR. Can I get different cards (or would I use stacks)
depending on the profile or would I have a stack for each profile that
had the cards necessary on it already? If it's the latter, how would I
handle something like the "Search" task that everyone has but changes
from time to time? Would I have to make the changes on every profile
stack or can I say "use the Search card from ... on this stack?" I think
I've figured out that my toolbar, "current inmate" and statusbar will
endup being "groups" that I will just include on every card so that it
looks like only the main work area is changing when in fact (I think)
the whole screen is changing. I also think I've figured out that I'll
need a stack to handle all of the database needs that I'll pass queries
to and retrieve answers from. So there you have it. I'm staring at a
blank mainstack and don't even know where to begin the design process.
How do I partition things so that I'm doing things the "Revolution way."
Thanks in advance for any pointers you might be able to offer. Len Morgan
From: Richard Gaskin <ambassador at fourthworld.com>
You may have come to the right place. You can consider this list a
working group for your personal success with learning Rev. :)
Tell us a bit about this Tcl project and perhaps some of the folks here
will chime in with suggestions on how to get started.
One of the tough things with learning a proprietary language is that
there are fewer third-party resources avaiable for learning.
But one of the upsides with Rev is that this mailing list is chock full
o' third parties ready and willing to offer personal assistance.
Len Morgan wrote:
>> Hello All,
>>
>> I've been a programmer since the mid 70's. I've used and/or tinkered
>> with all of the "normal" procedural languages (C, Tcl, BASIC) and even
>> some "ab"normal ones like Forth. I consider myself a pretty good
>> programmer and have been told I'm fairly bright in general. I've had
>> Revolution for a couple of weeks now, and I just can't seem to get my
>> head around the "methodology" of using Revolution.
>
>
More information about the use-livecode
mailing list