aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordrh <>2022-04-29 17:03:25 +0000
committerdrh <>2022-04-29 17:03:25 +0000
commit08e1a6a29b58ea62df1197a9e91f8c63b246cf25 (patch)
treee1e2991d469b937ec4a080fd66df77eee86349d5 /src
parenta087eb8f6d28a05f3dbe8a4eee9deb45b746865d (diff)
downloadsqlite-08e1a6a29b58ea62df1197a9e91f8c63b246cf25.tar.gz
sqlite-08e1a6a29b58ea62df1197a9e91f8c63b246cf25.zip
Show the USING clause as part of the tree-view display of SrcItem.
FossilOrigin-Name: 9cba3ce577e442f83d7a2d6926e38ffe6bc45953c88ecdd384f3455890303cce
Diffstat (limited to 'src')
-rw-r--r--src/treeview.c14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/treeview.c b/src/treeview.c
index 009ba2739..04ee80f7a 100644
--- a/src/treeview.c
+++ b/src/treeview.c
@@ -186,6 +186,7 @@ void sqlite3TreeViewSrcList(TreeView *pView, const SrcList *pSrc){
for(i=0; i<pSrc->nSrc; i++){
const SrcItem *pItem = &pSrc->a[i];
StrAccum x;
+ int n = 0;
char zLine[100];
sqlite3StrAccumInit(&x, 0, zLine, sizeof(zLine), 0);
x.printfFlags |= SQLITE_PRINTF_INTERNAL;
@@ -214,14 +215,21 @@ void sqlite3TreeViewSrcList(TreeView *pView, const SrcList *pSrc){
}
sqlite3StrAccumFinish(&x);
sqlite3TreeViewItem(pView, zLine, i<pSrc->nSrc-1);
+ n = 0;
+ if( pItem->pTab ) n++;
+ if( pItem->pSelect ) n++;
+ if( pItem->fg.isTabFunc ) n++;
+ if( pItem->fg.isUsing ) n++;
+ if( pItem->fg.isUsing ){
+ sqlite3TreeViewIdList(pView, pItem->u3.pUsing, (--n)>0, "USING");
+ }
if( pItem->pTab ){
Table *pTab = pItem->pTab;
- sqlite3TreeViewColumnList(pView, pTab->aCol, pTab->nCol,
- pItem->pSelect!=0);
+ sqlite3TreeViewColumnList(pView, pTab->aCol, pTab->nCol, (--n)>0);
}
if( pItem->pSelect ){
assert( pItem->fg.isNestedFrom == IsNestedFrom(pItem->pSelect) );
- sqlite3TreeViewSelect(pView, pItem->pSelect, 0);
+ sqlite3TreeViewSelect(pView, pItem->pSelect, (--n)>0);
}
if( pItem->fg.isTabFunc ){
sqlite3TreeViewExprList(pView, pItem->u1.pFuncArg, 0, "func-args:");