https://webwork.maa.org/mediawiki_new/index.php?title=GUI_Toolkit_Ideas&feed=atom&action=historyGUI Toolkit Ideas - Revision history2024-03-29T01:55:25ZRevision history for this page on the wikiMediaWiki 1.34.0https://webwork.maa.org/mediawiki_new/index.php?title=GUI_Toolkit_Ideas&diff=2377&oldid=prevSam at 22:24, 20 February 20082008-02-20T22:24:16Z<p></p>
<table class="diff diff-contentalign-left" data-mw="interface">
<col class="diff-marker" />
<col class="diff-content" />
<col class="diff-marker" />
<col class="diff-content" />
<tr class="diff-title" lang="en">
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">← Older revision</td>
<td colspan="2" style="background-color: #fff; color: #222; text-align: center;">Revision as of 22:24, 20 February 2008</td>
</tr><tr>
<td colspan="2" class="diff-lineno">Line 19:</td>
<td colspan="2" class="diff-lineno">Line 19:</td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* can only join tables that have a 1-to-1 relationship and have the same key fields.</div></td>
<td class="diff-marker"> </td>
<td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* can only join tables that have a 1-to-1 relationship and have the same key fields.</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* the "where clause" is limited to things we can pass to DB.pm, like lists of keyparts.</div></td>
<td class="diff-marker"> </td>
<td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>* the "where clause" is limited to things we can pass to DB.pm, like lists of keyparts.</div></td>
</tr>
<tr>
<td colspan="2" class="diff-empty"> </td>
<td class="diff-marker">+</td>
<td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td colspan="2" class="diff-empty"> </td>
<td class="diff-marker">+</td>
<td style="color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;"><div>-- Main.SamHathaway - 26 Feb 2004</div></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td>
<td class="diff-marker"> </td>
<td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"></td>
</tr>
<tr>
<td class="diff-marker"> </td>
<td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Category:Developers]]</div></td>
<td class="diff-marker"> </td>
<td style="background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;"><div>[[Category:Developers]]</div></td>
</tr>
</table>Samhttps://webwork.maa.org/mediawiki_new/index.php?title=GUI_Toolkit_Ideas&diff=2376&oldid=prevSam: New page: Class for generating data tables. You tell it which fields to show, which to make editable, which records to show, whether to allow record selection, whether to allow changes to shown set ...2008-02-20T21:28:25Z<p>New page: Class for generating data tables. You tell it which fields to show, which to make editable, which records to show, whether to allow record selection, whether to allow changes to shown set ...</p>
<p><b>New page</b></p><div>Class for generating data tables. You tell it which fields to show, which to make editable, which records to show, whether to allow record selection, whether to allow changes to shown set (show all, show selected), whether to show add/remove controls, etc. It generates the correct HTML code. On the next invocation, you pass the request to it and it deals with the results and returns the modified table.<br />
<br />
== Requirements ==<br />
<br />
=== Options ===<br />
<br />
* which fields to show (allow table joins?)<br />
* which fields to make editable (if any, show "save changes" button)<br />
* which records to show ("where clause")<br />
* whether to allow record selection (none, one, many)<br />
* whether to allow changes to the shown set (show all, show selected, etc.)<br />
* whether to show controls to add or remove records<br />
* any custom controls to show<br />
<br />
== Issues ==<br />
<br />
If we want this now, it's got to interface with the current database system, i.e. it has to be a "user" of DB.pm. This means limitations:<br />
<br />
* can only join tables that have a 1-to-1 relationship and have the same key fields.<br />
* the "where clause" is limited to things we can pass to DB.pm, like lists of keyparts.<br />
<br />
[[Category:Developers]]</div>Sam