gnumed-devel
[Top][All Lists]
Advanced

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

Re: [Gnumed-devel] re: experimental editor


From: Richard Terry
Subject: Re: [Gnumed-devel] re: experimental editor
Date: Fri, 02 Jul 2004 12:55:08 +1000
User-agent: Mozilla Thunderbird 0.6 (X11/20040503)

I would be far more elemental than that.

I can send in some basic specs. I would not try to make anything which plugs into the gui framework or loads or saves data for starters.

Simply a stand along wxPython frame contining a modified editor such as that in the wxPython demo, where we see how hard it is to make 'out of bounds' some areas of the lines ie functionally is like this.
1)Frame contains the editor
2)Editor and controls and  looks like this and contains this text
______________________________
|  Subjective   :                                 |
|  Objective    :                                 |
|   Assessment:                                 |
|   Plan           :                                |
______________________________
                           [btn_ok] [btn_cancel]

===============================
list heading = "There are n SOAP elements this consultation" (n = listindex +1)
=========================================
wxList


================================
Need array to contain inputted data eg textinput() with 0-3 elements
Inital code should do the following.
-white background of editor
- Text foreground prompts RGB 0,0, 131
- If user clicks anywhere over the edit area prompts the cursor should be re-directed to the first character space on the corresponding line (or the end of any existing characters on that line)
- If user types on line allow input to end of line
-If text exists on line and enter key pressed, cursor is re-set to start of next line underneath
-If on Plan line and enter pressed then give focus to the Ok button
-If Text exists on 1 or more lines of editor and ok button clicked then save text if textinput(0) will contain any text on the Subjective line (excluding the subjective heading) (1) will contain any text on Objective line (excluding the Objective heading)
  etc
After text saved to array, place a 'summary' as first element in the list array looking like below - finally invoke btn_clear to clear the editing area, and reset cursor to after 'Subjective'

ie

Before the Ok button is clicked:
______________________________
|  Subjective   : earache                     |
|  Objective    : red drum                   |
|   Assessment: middle ear infection    |
|   Plan           : script amoxil              |
______________________________
                           [btn_ok] [btn_cancel]

===============================
    There are  0 SOAP elements this consultation
=========================================
wxList is empty


================================
After the Ok button is clicked:
______________________________
|  Subjective   :                               |
|  Objective    :                               |
|   Assessment:                               |
|   Plan           :                              |
______________________________
                           [btn_ok] [btn_cancel]

===============================
    There are  1 SOAP elements this consultation"
=======================================
wxList now contains
Middle Ear Infection - (earache, red drum, Plan:script amoxil)

================================

Now one additional functionality.

If the user clicks on this item the list, you replace the strings in the array(0-3) back into the corresponding lines of the editing area.

This should be fairly simple to anyone who can program. If you get to that point you have the whole thing beat. At no point try and save the data or link to the database.

The next clever thing to do is the following:

Starting with this:
_______________________________
|  Subjective   : earache                     |
|  Objective    : red drum                   |
|   Assessment: middle ear infection    |
|   Plan           : script amoxil              |
______________________________

Make this happen when the text reaches the end of the line:
_______________________________
|  Subjective   : earache, fever, cough, |
|                      vomiting, rash            |
|  Objective    : red drum                   |
|   Assessment: middle ear infection    |
|   Plan           : script amoxil              |
______________________________

Ie you will have to 'shift down' the prompts and insert a blank line in the editor as the users text gets to the end of the line. (similarly you will have to delete a blank line if one is made blank by deleting text). There are scads of ways to do this. When I did my text mode text and graphics editor I just kept a map of where this were, and inserted blank lines into the control via code as needed, I don't know how wxPython handles this.

Once you've acheieved this the whole thing is beaten. Next step is to add some smart promtps eg BP= (inserted at the cursor by a control key - but colour code them) and only allow this type of things on Objective lines. Next thing is to use the phrase wheel code to auto-complete.

Regards

Ricahrd

sjtan wrote:



I would be happy to work with sjtan who seemed enthusiastic about this, to explore if we could use an existing wxPython control/python code to do this,

Well , it's probably worth a try, as long as the understanding is no one worries if the code isn't used.
The aim might be to get something basic going , like a module that :
1. plugs in within the gnumed plugin framework
2. has the L + F  of  at least 1.5 colloborators' wishes
3. can update and read with, at least 1/4 , the current clinical schema .

If 1/4 is reached, and people feel tired, then the collaboration can retire. Hows that ?




_______________________________________________
Gnumed-devel mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/gnumed-devel






reply via email to

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