5 * \defgroup TabUtils Utility functions for creating tabbed dialogs
6 * \ingroup WebcitDisplayItems
12 * \brief print tabbed dialog
13 * \param num_tabs how many tabs do we have?
14 * \param tabnames the headers of the tables
16 void tabbed_dialog(int num_tabs, char *tabnames[]) {
19 wprintf("<script type=\"text/javascript\"> "
20 "var previously_selected_tab = '0'; "
21 "function tabsel(which_tab) { "
22 " if (which_tab == previously_selected_tab) { "
25 " $('tabdiv'+previously_selected_tab).style.display = 'none'; "
26 " $('tabdiv'+which_tab).style.display = 'block'; "
27 " $('tabtd'+previously_selected_tab).className = 'tab_cell_edit'; "
28 " $('tabtd'+which_tab).className = 'tab_cell_label'; "
29 " previously_selected_tab = which_tab; "
34 wprintf("<table id=\"TheTabs\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\">"
35 "<tr align=\"center\" style=\"cursor:pointer\"><td> </td>"
38 for (i=0; i<num_tabs; ++i) {
39 wprintf("<td id=\"tabtd%d\" class=\"%s\" "
40 "onClick='tabsel(\"%d\");'"
43 ( (i==0) ? "tab_cell_label" : "tab_cell_edit" ),
47 wprintf("%s", tabnames[i]);
50 wprintf("<td> </td>\n");
53 wprintf("</tr></table>\n");
57 * \brief print the tab-header
58 * \param tabnum number of the tab to print
59 * \param num_tabs total number oftabs to be printed
61 void begin_tab(int tabnum, int num_tabs) {
62 wprintf("<!-- begin tab %d of %d -->\n", tabnum, num_tabs);
63 wprintf("<div id=\"tabdiv%d\" style=\"display:%s\" class=\"tabcontent\" >",
65 ( (tabnum == 0) ? "block" : "none" )
70 * \brief print the tab-footer
71 * \param tabnum number of the tab to print
72 * \param num_tabs total number of tabs to be printed
74 void end_tab(int tabnum, int num_tabs) {
76 wprintf("<!-- end tab %d of %d -->\n", tabnum, num_tabs);
78 if (tabnum == num_tabs-1) {
80 wprintf("<script type=\"text/javascript\">"
81 " Nifty(\"table#TheTabs td\", \"small transparent top\");"