diff --git a/packages/web/src/appobj/DatabaseObjectAppObject.svelte b/packages/web/src/appobj/DatabaseObjectAppObject.svelte
index 7fa1a3e36..26ebe5573 100644
--- a/packages/web/src/appobj/DatabaseObjectAppObject.svelte
+++ b/packages/web/src/appobj/DatabaseObjectAppObject.svelte
@@ -14,6 +14,113 @@
views: 'ViewDataTab',
};
+ const menus = {
+ tables: [
+ {
+ label: 'Open data',
+ tab: 'TableDataTab',
+ forceNewTab: true,
+ },
+ {
+ label: 'Open form',
+ tab: 'TableDataTab',
+ forceNewTab: true,
+ initialData: {
+ grid: {
+ isFormView: true,
+ },
+ },
+ },
+ {
+ label: 'Open structure',
+ tab: 'TableStructureTab',
+ },
+ {
+ label: 'Query designer',
+ isQueryDesigner: true,
+ },
+ {
+ divider: true,
+ },
+ {
+ label: 'Export',
+ isExport: true,
+ },
+ {
+ label: 'Open in free table editor',
+ isOpenFreeTable: true,
+ },
+ {
+ label: 'Open active chart',
+ isActiveChart: true,
+ },
+ {
+ divider: true,
+ },
+ {
+ label: 'SQL: CREATE TABLE',
+ sqlTemplate: 'CREATE TABLE',
+ },
+ ],
+ views: [
+ {
+ label: 'Open data',
+ tab: 'ViewDataTab',
+ forceNewTab: true,
+ },
+ {
+ label: 'Open structure',
+ tab: 'TableStructureTab',
+ },
+ {
+ label: 'Query designer',
+ isQueryDesigner: true,
+ },
+ {
+ divider: true,
+ },
+ {
+ label: 'Export',
+ isExport: true,
+ },
+ {
+ label: 'Open in free table editor',
+ isOpenFreeTable: true,
+ },
+ {
+ label: 'Open active chart',
+ isActiveChart: true,
+ },
+ {
+ divider: true,
+ },
+ {
+ label: 'SQL: CREATE VIEW',
+ sqlTemplate: 'CREATE OBJECT',
+ },
+ {
+ label: 'SQL: CREATE TABLE',
+ sqlTemplate: 'CREATE TABLE',
+ },
+ ],
+ procedures: [
+ {
+ label: 'SQL: CREATE PROCEDURE',
+ sqlTemplate: 'CREATE OBJECT',
+ },
+ {
+ label: 'SQL: EXECUTE',
+ sqlTemplate: 'EXECUTE PROCEDURE',
+ },
+ ],
+ functions: [
+ {
+ label: 'SQL: CREATE FUNCTION',
+ sqlTemplate: 'CREATE OBJECT',
+ },
+ ],
+ };
+
export async function openDatabaseObjectDetail(
tabComponent,
sqlTemplate,
@@ -51,11 +158,15 @@