[svn-commits] seanbright: trunk r397 - in /trunk: ./ test/
SVN commits to the Digium repositories
svn-commits at lists.digium.com
Wed Nov 5 10:14:17 CST 2008
Author: seanbright
Date: Thu Oct 9 10:22:21 2008
New Revision: 397
URL: http://svn.digium.com/view/menuselect?view=rev&rev=397
Log:
Let dependencies, conflicts, and usable items specify display names and
update the front-ends to use them.
Modified:
trunk/menuselect.c
trunk/menuselect.h
trunk/menuselect_curses.c
trunk/menuselect_gtk.c
trunk/menuselect_newt.c
trunk/test/menuselect-tree
Modified: trunk/menuselect.c
URL: http://svn.digium.com/view/menuselect/trunk/menuselect.c?view=diff&rev=397&r1=396&r2=397
==============================================================================
--- trunk/menuselect.c (original)
+++ trunk/menuselect.c Thu Oct 9 10:22:21 2008
@@ -206,9 +206,9 @@
menu = mxmlFindElement(tree->root, tree->root, "menu", NULL, NULL, MXML_DESCEND);
if ((tmp = mxmlElementGetAttr(menu, "name")))
menu_name = tmp;
- for (cur = mxmlFindElement(menu, menu, "category", NULL, NULL, MXML_DESCEND);
+ for (cur = mxmlFindElement(menu, menu, "category", NULL, NULL, MXML_DESCEND_FIRST);
cur;
- cur = mxmlFindElement(cur, menu, "category", NULL, NULL, MXML_DESCEND))
+ cur = mxmlFindElement(cur, menu, "category", NULL, NULL, MXML_NO_DESCEND))
{
struct category *cat;
struct category *newcat;
@@ -235,9 +235,9 @@
if ((tmp = mxmlElementGetAttr(cur, "remove_on_change")))
cat->remove_on_change = tmp;
- for (cur2 = mxmlFindElement(cur, cur, "member", NULL, NULL, MXML_DESCEND);
+ for (cur2 = mxmlFindElement(cur, cur, "member", NULL, NULL, MXML_DESCEND_FIRST);
cur2;
- cur2 = mxmlFindElement(cur2, cur, "member", NULL, NULL, MXML_DESCEND))
+ cur2 = mxmlFindElement(cur2, cur, "member", NULL, NULL, MXML_NO_DESCEND))
{
if (!(mem = calloc(1, sizeof(*mem))))
return -1;
@@ -254,46 +254,70 @@
if (cur3 && cur3->child)
mem->defaultenabled = cur3->child->value.opaque;
- for (cur3 = mxmlFindElement(cur2, cur2, "depend", NULL, NULL, MXML_DESCEND);
+ for (cur3 = mxmlFindElement(cur2, cur2, "depend", NULL, NULL, MXML_DESCEND_FIRST);
cur3 && cur3->child;
- cur3 = mxmlFindElement(cur3, cur2, "depend", NULL, NULL, MXML_DESCEND))
+ cur3 = mxmlFindElement(cur3, cur2, "depend", NULL, NULL, MXML_NO_DESCEND))
{
if (!(dep = calloc(1, sizeof(*dep)))) {
free_member(mem);
return -1;
}
+ if ((tmp = mxmlElementGetAttr(cur3, "name"))) {
+ if (!strlen_zero(tmp)) {
+ dep->name = tmp;
+ }
+ }
if (!strlen_zero(cur3->child->value.opaque)) {
- dep->name = cur3->child->value.opaque;
+ dep->displayname = cur3->child->value.opaque;
+ if (!dep->name) {
+ dep->name = dep->displayname;
+ }
AST_LIST_INSERT_TAIL(&mem->deps, dep, list);
} else
free(dep);
}
- for (cur3 = mxmlFindElement(cur2, cur2, "conflict", NULL, NULL, MXML_DESCEND);
+ for (cur3 = mxmlFindElement(cur2, cur2, "conflict", NULL, NULL, MXML_DESCEND_FIRST);
cur3 && cur3->child;
- cur3 = mxmlFindElement(cur3, cur2, "conflict", NULL, NULL, MXML_DESCEND))
+ cur3 = mxmlFindElement(cur3, cur2, "conflict", NULL, NULL, MXML_NO_DESCEND))
{
if (!(cnf = calloc(1, sizeof(*cnf)))) {
free_member(mem);
return -1;
}
+ if ((tmp = mxmlElementGetAttr(cur3, "name"))) {
+ if (!strlen_zero(tmp)) {
+ cnf->name = tmp;
+ }
+ }
if (!strlen_zero(cur3->child->value.opaque)) {
- cnf->name = cur3->child->value.opaque;
+ cnf->displayname = cur3->child->value.opaque;
+ if (!cnf->name) {
+ cnf->name = cnf->displayname;
+ }
AST_LIST_INSERT_TAIL(&mem->conflicts, cnf, list);
} else
free(cnf);
}
- for (cur3 = mxmlFindElement(cur2, cur2, "use", NULL, NULL, MXML_DESCEND);
+ for (cur3 = mxmlFindElement(cur2, cur2, "use", NULL, NULL, MXML_DESCEND_FIRST);
cur3 && cur3->child;
- cur3 = mxmlFindElement(cur3, cur2, "use", NULL, NULL, MXML_DESCEND))
+ cur3 = mxmlFindElement(cur3, cur2, "use", NULL, NULL, MXML_NO_DESCEND))
{
if (!(use = calloc(1, sizeof(*use)))) {
free_member(mem);
return -1;
}
+ if ((tmp = mxmlElementGetAttr(cur3, "name"))) {
+ if (!strlen_zero(tmp)) {
+ use->name = tmp;
+ }
+ }
if (!strlen_zero(cur3->child->value.opaque)) {
- use->name = cur3->child->value.opaque;
+ use->displayname = cur3->child->value.opaque;
+ if (!use->name) {
+ use->name = use->displayname;
+ }
AST_LIST_INSERT_TAIL(&mem->uses, use, list);
} else
free(use);
Modified: trunk/menuselect.h
URL: http://svn.digium.com/view/menuselect/trunk/menuselect.h?view=diff&rev=397&r1=396&r2=397
==============================================================================
--- trunk/menuselect.h (original)
+++ trunk/menuselect.h Thu Oct 9 10:22:21 2008
@@ -37,6 +37,8 @@
struct depend {
/*! the name of the dependency */
const char *name;
+ /*! the display name of the dependency */
+ const char *displayname;
/*! if this dependency is a member, not an external object */
struct member *member;
/*! for linking */
@@ -46,6 +48,8 @@
struct conflict {
/*! the name of the conflict */
const char *name;
+ /*! the display name of the conflict */
+ const char *displayname;
/*! if this conflict is a member, not an external object */
const struct member *member;
/*! for linking */
@@ -55,6 +59,8 @@
struct use {
/*! the name of the used package */
const char *name;
+ /*! the display name of the used package */
+ const char *displayname;
/*! if this dependency is a member, not an external object */
struct member *member;
/*! for linking */
Modified: trunk/menuselect_curses.c
URL: http://svn.digium.com/view/menuselect/trunk/menuselect_curses.c?view=diff&rev=397&r1=396&r2=397
==============================================================================
--- trunk/menuselect_curses.c (original)
+++ trunk/menuselect_curses.c Thu Oct 9 10:22:21 2008
@@ -195,7 +195,7 @@
wmove(menu, end - start + 3, max_x / 2 - 16);
strcpy(buf, "Depends on: ");
AST_LIST_TRAVERSE(&mem->deps, dep, list) {
- strncat(buf, dep->name, sizeof(buf) - strlen(buf) - 1);
+ strncat(buf, dep->displayname, sizeof(buf) - strlen(buf) - 1);
strncat(buf, dep->member ? "(M)" : "(E)", sizeof(buf) - strlen(buf) - 1);
if (AST_LIST_NEXT(dep, list))
strncat(buf, ", ", sizeof(buf) - strlen(buf) - 1);
@@ -206,7 +206,7 @@
wmove(menu, end - start + 4, max_x / 2 - 16);
strcpy(buf, "Can use: ");
AST_LIST_TRAVERSE(&mem->uses, use, list) {
- strncat(buf, use->name, sizeof(buf) - strlen(buf) - 1);
+ strncat(buf, use->displayname, sizeof(buf) - strlen(buf) - 1);
strncat(buf, use->member ? "(M)" : "(E)", sizeof(buf) - strlen(buf) - 1);
if (AST_LIST_NEXT(use, list))
strncat(buf, ", ", sizeof(buf) - strlen(buf) - 1);
@@ -217,7 +217,7 @@
wmove(menu, end - start + 5, max_x / 2 - 16);
strcpy(buf, "Conflicts with: ");
AST_LIST_TRAVERSE(&mem->conflicts, con, list) {
- strncat(buf, con->name, sizeof(buf) - strlen(buf) - 1);
+ strncat(buf, con->displayname, sizeof(buf) - strlen(buf) - 1);
strncat(buf, con->member ? "(M)" : "(E)", sizeof(buf) - strlen(buf) - 1);
if (AST_LIST_NEXT(con, list))
strncat(buf, ", ", sizeof(buf) - strlen(buf) - 1);
Modified: trunk/menuselect_gtk.c
URL: http://svn.digium.com/view/menuselect/trunk/menuselect_gtk.c?view=diff&rev=397&r1=396&r2=397
==============================================================================
--- trunk/menuselect_gtk.c (original)
+++ trunk/menuselect_gtk.c Thu Oct 9 10:22:21 2008
@@ -273,18 +273,18 @@
struct conflict *cnf;
AST_LIST_TRAVERSE(&mem->deps, dep, list) {
- strncat(dep_buf, dep->name, sizeof(dep_buf) - strlen(dep_buf) - 1);
+ strncat(dep_buf, dep->displayname, sizeof(dep_buf) - strlen(dep_buf) - 1);
strncat(dep_buf, dep->member ? "(M)" : "(E)", sizeof(dep_buf) - strlen(dep_buf) - 1);
if (AST_LIST_NEXT(dep, list))
strncat(dep_buf, ", ", sizeof(dep_buf) - strlen(dep_buf) - 1);
}
AST_LIST_TRAVERSE(&mem->uses, use, list) {
- strncat(use_buf, use->name, sizeof(use_buf) - strlen(use_buf) - 1);
+ strncat(use_buf, use->displayname, sizeof(use_buf) - strlen(use_buf) - 1);
if (AST_LIST_NEXT(use, list))
strncat(use_buf, ", ", sizeof(use_buf) - strlen(use_buf) - 1);
}
AST_LIST_TRAVERSE(&mem->conflicts, cnf, list) {
- strncat(cnf_buf, cnf->name, sizeof(cnf_buf) - strlen(cnf_buf) - 1);
+ strncat(cnf_buf, cnf->displayname, sizeof(cnf_buf) - strlen(cnf_buf) - 1);
strncat(cnf_buf, cnf->member ? "(M)" : "(E)", sizeof(cnf_buf) - strlen(cnf_buf) - 1);
if (AST_LIST_NEXT(cnf, list))
strncat(cnf_buf, ", ", sizeof(cnf_buf) - strlen(cnf_buf) - 1);
Modified: trunk/menuselect_newt.c
URL: http://svn.digium.com/view/menuselect/trunk/menuselect_newt.c?view=diff&rev=397&r1=396&r2=397
==============================================================================
--- trunk/menuselect_newt.c (original)
+++ trunk/menuselect_newt.c Thu Oct 9 10:22:21 2008
@@ -105,7 +105,7 @@
} else {
strcpy(buffer, "");
AST_LIST_TRAVERSE(&mem->deps, dep, list) {
- strncat(buffer, dep->name, sizeof(buffer) - strlen(buffer) - 1);
+ strncat(buffer, dep->displayname, sizeof(buffer) - strlen(buffer) - 1);
strncat(buffer, dep->member ? "(M)" : "(E)", sizeof(buffer) - strlen(buffer) - 1);
if (AST_LIST_NEXT(dep, list))
strncat(buffer, ", ", sizeof(buffer) - strlen(buffer) - 1);
@@ -118,7 +118,7 @@
} else {
strcpy(buffer, "");
AST_LIST_TRAVERSE(&mem->uses, uses, list) {
- strncat(buffer, uses->name, sizeof(buffer) - strlen(buffer) - 1);
+ strncat(buffer, uses->displayname, sizeof(buffer) - strlen(buffer) - 1);
if (AST_LIST_NEXT(uses, list))
strncat(buffer, ", ", sizeof(buffer) - strlen(buffer) - 1);
}
@@ -130,7 +130,7 @@
} else {
strcpy(buffer, "");
AST_LIST_TRAVERSE(&mem->conflicts, con, list) {
- strncat(buffer, con->name, sizeof(buffer) - strlen(buffer) - 1);
+ strncat(buffer, con->displayname, sizeof(buffer) - strlen(buffer) - 1);
strncat(buffer, con->member ? "(M)" : "(E)", sizeof(buffer) - strlen(buffer) - 1);
if (AST_LIST_NEXT(con, list))
strncat(buffer, ", ", sizeof(buffer) - strlen(buffer) - 1);
Modified: trunk/test/menuselect-tree
URL: http://svn.digium.com/view/menuselect/trunk/test/menuselect-tree?view=diff&rev=397&r1=396&r2=397
==============================================================================
--- trunk/test/menuselect-tree (original)
+++ trunk/test/menuselect-tree Thu Oct 9 10:22:21 2008
@@ -22,13 +22,13 @@
<member name="app_controlplayback" displayname="Control Playback Application" remove_on_change="apps/app_controlplayback.o apps/app_controlplayback.so">
</member>
<member name="app_dahdibarge" displayname="Barge in on DAHDI channel application" remove_on_change="apps/app_dahdibarge.o apps/app_dahdibarge.so">
- <depend>dahdi</depend>
+ <depend name="dahdi">DAHDI</depend>
</member>
<member name="app_dahdiras" displayname="DAHDI ISDN Remote Access Server" remove_on_change="apps/app_dahdiras.o apps/app_dahdiras.so">
- <depend>dahdi</depend>
+ <depend name="dahdi">DAHDI</depend>
</member>
<member name="app_dahdiscan" displayname="Scan DAHDI channels application" remove_on_change="apps/app_dahdiscan.o apps/app_dahdiscan.so">
- <depend>dahdi</depend>
+ <depend name="dahdi">DAHDI</depend>
</member>
<member name="app_db" displayname="Database Access Functions" remove_on_change="apps/app_db.o apps/app_db.so">
</member>
@@ -58,7 +58,7 @@
<member name="app_festival" displayname="Simple Festival Interface" remove_on_change="apps/app_festival.o apps/app_festival.so">
</member>
<member name="app_flash" displayname="Flash channel application" remove_on_change="apps/app_flash.o apps/app_flash.so">
- <depend>dahdi</depend>
+ <depend name="dahdi">DAHDI</depend>
</member>
<member name="app_followme" displayname="Find-Me/Follow-Me Application" remove_on_change="apps/app_followme.o apps/app_followme.so">
<depend>chan_local</depend>
@@ -76,7 +76,7 @@
</member>
<member name="app_jack" displayname="JACK Interface" remove_on_change="apps/app_jack.o apps/app_jack.so">
<depend>jack</depend>
- <depend>resample</depend>
+ <depend name="resample">libresample</depend>
</member>
<member name="app_macro" displayname="Extension Macros" remove_on_change="apps/app_macro.o apps/app_macro.so">
</member>
@@ -101,7 +101,7 @@
<depend>ssl</depend>
</member>
<member name="app_page" displayname="Page Multiple Phones" remove_on_change="apps/app_page.o apps/app_page.so">
- <depend>dahdi</depend>
+ <depend name="dahdi">DAHDI</depend>
<depend>app_meetme</depend>
</member>
<member name="app_parkandannounce" displayname="Call Parking and Announce Application" remove_on_change="apps/app_parkandannounce.o apps/app_parkandannounce.so">
@@ -122,7 +122,7 @@
<member name="app_record" displayname="Trivial Record Application" remove_on_change="apps/app_record.o apps/app_record.so">
</member>
<member name="app_rpt" displayname="Radio Repeater/Remote Base Application" remove_on_change="apps/app_rpt.o apps/app_rpt.so">
- <depend>dahdi</depend>
+ <depend name="dahdi">DAHDI</depend>
<depend>tonezone</depend>
<defaultenabled>no</defaultenabled>
</member>
@@ -175,7 +175,7 @@
</category>
<category name="MENUSELECT_CDR" displayname="Call Detail Recording" remove_on_change="cdr/modules.link">
<member name="cdr_adaptive_odbc" displayname="Adaptive ODBC CDR backend" remove_on_change="cdr/cdr_adaptive_odbc.o cdr/cdr_adaptive_odbc.so">
- <depend>unixodbc</depend>
+ <depend name="unixODBC">unixodbc</depend>
</member>
<member name="cdr_csv" displayname="Comma Separated Values CDR Backend" remove_on_change="cdr/cdr_csv.o cdr/cdr_csv.so">
</member>
@@ -184,11 +184,11 @@
<member name="cdr_manager" displayname="Asterisk Manager Interface CDR Backend" remove_on_change="cdr/cdr_manager.o cdr/cdr_manager.so">
</member>
<member name="cdr_odbc" displayname="ODBC CDR Backend" remove_on_change="cdr/cdr_odbc.o cdr/cdr_odbc.so">
- <depend>unixodbc</depend>
- <depend>ltdl</depend>
+ <depend name="unixodbc">unixODBC</depend>
+ <depend name="ltdl">libtool-ltdl</depend>
</member>
<member name="cdr_pgsql" displayname="PostgreSQL CDR Backend" remove_on_change="cdr/cdr_pgsql.o cdr/cdr_pgsql.so">
- <depend>pgsql</depend>
+ <depend name="pgsql">PostgreSQL</depend>
</member>
<member name="cdr_radius" displayname="RADIUS CDR Backend" remove_on_change="cdr/cdr_radius.o cdr/cdr_radius.so">
<depend>radius</depend>
@@ -200,7 +200,7 @@
<depend>sqlite</depend>
</member>
<member name="cdr_tds" displayname="FreeTDS CDR Backend" remove_on_change="cdr/cdr_tds.o cdr/cdr_tds.so">
- <depend>freetds</depend>
+ <depend name="freetds">FreeTDS</depend>
</member>
</category>
<category name="MENUSELECT_CHANNELS" displayname="Channel Drivers" remove_on_change="channels/modules.link">
@@ -215,7 +215,7 @@
</member>
<member name="chan_dahdi" displayname="DAHDI Telephony" remove_on_change="channels/chan_dahdi.o channels/chan_dahdi.so">
<depend>res_smdi</depend>
- <depend>dahdi</depend>
+ <depend name="dahdi">DAHDI</depend>
<depend>tonezone</depend>
<use>pri</use>
<use>ss7</use>
@@ -282,7 +282,7 @@
<member name="codec_a_mu" displayname="A-law and Mulaw direct Coder/Decoder" remove_on_change="codecs/codec_a_mu.o codecs/codec_a_mu.so">
</member>
<member name="codec_dahdi" displayname="Generic DAHDI Transcoder Codec Translator" remove_on_change="codecs/codec_dahdi.o codecs/codec_dahdi.so">
- <depend>dahdi</depend>
+ <depend name="dahdi">DAHDI</depend>
</member>
<member name="codec_g722" displayname="ITU G.722-64kbps G722 Transcoder" remove_on_change="codecs/codec_g722.o codecs/codec_g722.so">
</member>
@@ -517,7 +517,7 @@
<member name="res_speech" displayname="Generic Speech Recognition API" remove_on_change="res/res_speech.o res/res_speech.so">
</member>
<member name="res_timing_dahdi" displayname="DAHDI Timing Interface" remove_on_change="res/res_timing_dahdi.o res/res_timing_dahdi.so">
- <depend>dahdi</depend>
+ <depend name="dahdi">DAHDI</depend>
</member>
<member name="res_timing_pthread" displayname="pthread Timing Interface" remove_on_change="res/res_timing_pthread.o res/res_timing_pthread.so">
</member>
More information about the svn-commits
mailing list