From 60dff96936790a879a11a612f78a8cbca2525382 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Beno=C3=AEt=20Minisini?= Date: Fri, 19 Aug 2016 19:43:56 +0000 Subject: [PATCH] [DEVELOPMENT ENVIRONMENT] * NEW: Database connection: Now you can initialize a new database from the template of another connection of the project. git-svn-id: svn://localhost/gambas/trunk@7850 867c0c6c-44f3-4631-809d-bfa615b0a4ec --- app/src/gambas3/.lang/fr.mo | Bin 129076 -> 129126 bytes app/src/gambas3/.lang/fr.po | 36 +++++++------- .../.src/Connection/FNewConnection.class | 37 ++++++++++++++- .../.src/Connection/FNewConnection.form | 44 +++++++++++------- .../.src/Connection/MConnection.module | 18 +++++++ main/lib/db/gb.db/.settings | 4 +- main/lib/db/gb.db/.src/Connection.class | 20 ++++++++ 7 files changed, 124 insertions(+), 35 deletions(-) diff --git a/app/src/gambas3/.lang/fr.mo b/app/src/gambas3/.lang/fr.mo index 8ad966d2ba4053276057d999e47c55ed07593a7b..0544a64e146d5f7b515be898bf6f8f8b3d5abc96 100644 GIT binary patch delta 38428 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�B`hMLG= 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 Ubm`WnOJMUBoA{r`8aVj>0Z8Qd*Z=?k delta 38369 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 diff --git a/app/src/gambas3/.lang/fr.po b/app/src/gambas3/.lang/fr.po index e385d5527..65dfb1994 100644 --- a/app/src/gambas3/.lang/fr.po +++ b/app/src/gambas3/.lang/fr.po @@ -222,7 +222,7 @@ msgid "" msgstr "" "Project-Id-Version: gambas3 3.8.90\n" -"PO-Revision-Date: 2016-08-17 20:15 UTC\n" +"PO-Revision-Date: 2016-08-19 15:52 UTC\n" "Last-Translator: Benoît Minisini \n" "Language: fr\n" "MIME-Version: 1.0\n" @@ -1245,7 +1245,7 @@ msgstr "Fermer" msgid "Name" msgstr "Nom" -#: FDebugInfo.class:76 FNewConnection.form:82 FNewTable.form:48 FProxy.form:27 +#: FDebugInfo.class:76 FNewConnection.form:85 FNewTable.form:48 FProxy.form:27 msgid "Type" msgstr "Type" @@ -1533,7 +1533,7 @@ msgstr "Ne pas joindre le projet au mail" msgid "(No parent)" msgstr "(Aucune)" -#: FCreateFile.class:289 +#: FCreateFile.class:293 msgid "Cannot add file." msgstr "Impossible d'ajouter le fichier." @@ -2081,7 +2081,7 @@ msgstr "Utilisateur" msgid "Password" msgstr "Mot de passe" -#: FFarmLogin.form:95 FNewConnection.form:174 FProjectVersion.form:155 +#: FFarmLogin.form:95 FNewConnection.form:177 FProjectVersion.form:155 msgid "Remember password" msgstr "Se souvenir du mot de passe" @@ -3853,47 +3853,51 @@ msgstr "Propriétés de la connexion" msgid "Select a directory" msgstr "Choisissez un répertoire" -#: FNewConnection.class:212 +#: FNewConnection.class:215 msgid "Create database" msgstr "Créer la base de données" -#: FNewConnection.class:216 +#: FNewConnection.class:227 msgid "Delete database" msgstr "Supprimer la base de données" -#: FNewConnection.class:340 +#: FNewConnection.class:369 msgid "Unable to create database." msgstr "Impossible de créer la base de données." -#: FNewConnection.class:349 +#: FNewConnection.class:378 msgid "Do you really want to delete the database '&1'?" msgstr "Voulez-vous vraiment supprimer la base de données « &1 » ?" -#: FNewConnection.class:360 +#: FNewConnection.class:389 msgid "Unable to delete database." msgstr "Impossible de supprimer la base de données." -#: FNewConnection.form:97 FProxy.form:32 +#: FNewConnection.form:100 FProxy.form:32 msgid "Host" msgstr "Hôte" -#: FNewConnection.form:122 +#: FNewConnection.form:125 msgid "Path" msgstr "Emplacement" -#: FNewConnection.form:189 Project.module:227 +#: FNewConnection.form:192 Project.module:227 msgid "Database" msgstr "Bases de données" -#: FNewConnection.form:246 +#: FNewConnection.form:244 +msgid "From" +msgstr "À partir de" + +#: FNewConnection.form:268 msgid "Ignore database charset" msgstr "Ignorer le jeu de caractères de la base de données" -#: FNewConnection.form:260 +#: FNewConnection.form:282 msgid "Display metadata" msgstr "Afficher les métadonnées" -#: FNewConnection.form:274 +#: FNewConnection.form:296 msgid "Remember database structure" msgstr "Mémoriser la structure de la base de données" @@ -5741,7 +5745,7 @@ msgstr "Impossible d'enregistrer le mot de passe." msgid "Cannot create table '&1'." msgstr "Impossible de créer la table « &1 »." -#: MConnection.module:475 +#: MConnection.module:493 msgid "Cannot create metadata table." msgstr "Impossible de créer la table des métadonnées." diff --git a/app/src/gambas3/.src/Connection/FNewConnection.class b/app/src/gambas3/.src/Connection/FNewConnection.class index 38fb66264..c417094b0 100644 --- a/app/src/gambas3/.src/Connection/FNewConnection.class +++ b/app/src/gambas3/.src/Connection/FNewConnection.class @@ -206,20 +206,38 @@ Private Sub UpdateCreateDatabase() Dim sDatabase As String If Not $hConn.Opened Then Return + sDatabase = Trim(txtDatabase.Text) If sDatabase Then + If Not $hConn.Databases.Exist(sDatabase) Then + btnCreateDatabase.Text = ("Create database") + btnCreateDatabase.Show btnDeleteDatabase.Hide + + cmbCreateFrom.List = MConnection.GetTemplates() + panCreateFrom.Visible = cmbCreateFrom.Count + chkCreateFrom.Value = False + cmbCreateFrom.Enabled = False + Else + btnDeleteDatabase.Text = ("Delete database") + btnCreateDatabase.Hide + panCreateFrom.Hide btnDeleteDatabase.Show + Endif + panDatabaseAction.Show + Else + panDatabaseAction.Hide + Endif Try lvwDatabase[sDatabase].Selected = True @@ -329,9 +347,20 @@ End Public Sub btnCreateDatabase_Click() + Dim hConn As Connection + Dim sName As String + Inc Application.Busy - $hConn.Databases.Add(Trim(txtDatabase.Text)) + sName = Trim(txtDatabase.Text) + $hConn.Databases.Add(sName) FillDatabaseList + If chkCreateFrom.Value Then + hConn = $hConn.Copy() + hConn.Name = sName + hConn.Open + hConn.ApplyTemplate(File.Load(Project.Dir &/ ".connection" &/ cmbCreateFrom.Text & ".template")) + hConn.Close + Endif Dec Application.Busy Catch @@ -361,3 +390,9 @@ Catch txtDatabase.SetFocus End + +Public Sub chkCreateFrom_Click() + + cmbCreateFrom.Enabled = chkCreateFrom.Value + +End diff --git a/app/src/gambas3/.src/Connection/FNewConnection.form b/app/src/gambas3/.src/Connection/FNewConnection.form index 3789ce418..253f6156b 100644 --- a/app/src/gambas3/.src/Connection/FNewConnection.form +++ b/app/src/gambas3/.src/Connection/FNewConnection.form @@ -1,7 +1,7 @@ # Gambas Form File 3.0 { Form Form - MoveScaled(0,0,98,91) + MoveScaled(0,0,103,91) Icon = Picture["img/16/database.png"] Resizable = False Arrangement = Arrange.Vertical @@ -65,7 +65,7 @@ } } { panLogin VBox - MoveScaled(1,21,68,13) + MoveScaled(1,21,96,9) Spacing = True { HBox4 HBox MoveScaled(0,0,68,4) @@ -79,9 +79,10 @@ } } { HBox5 HBox - MoveScaled(0,5,68,4) + MoveScaled(0,5,79,4) + Spacing = True { Label4 Label - MoveScaled(0,0,18,4) + MoveScaled(0,0,17,4) Text = ("Password") } { txtPassword TextBox @@ -89,25 +90,20 @@ Expand = True Password = True } - } - { HBox9 HBox - MoveScaled(0,10,68,3) - { Label9 Label - MoveScaled(0,0,18,3) - } { chkRememberPassword CheckBox - MoveScaled(27,0,24,3) + MoveScaled(53,0,24,4) Expand = True + AutoResize = True Text = ("Remember password") } } } { panDatabase VBox - MoveScaled(1,35,84,47) + MoveScaled(1,35,96,47) AutoResize = True Spacing = True { HBox6 HBox - MoveScaled(0,0,84,4) + MoveScaled(0,0,96,4) { Label6 Label MoveScaled(0,0,18,4) Text = ("Database") @@ -119,13 +115,13 @@ } } { panChooseDatabase HBox - MoveScaled(0,5,68,30) + MoveScaled(0,5,95,30) Visible = False { Label8 Label MoveScaled(0,0,18,3) } { VBox1 VBox - MoveScaled(32,0,35,18) + MoveScaled(27,0,66,18) Expand = True Spacing = True { lvwDatabase ListView @@ -133,7 +129,7 @@ Expand = True } { panDatabaseAction HBox - MoveScaled(0,12,34,4) + MoveScaled(0,12,65,4) Spacing = True { btnCreateDatabase Button MoveScaled(0,0,14,4) @@ -145,6 +141,22 @@ AutoResize = True Picture = Picture["icon:/small/delete"] } + { panCreateFrom HBox + MoveScaled(30,0,30,4) + Expand = True + Spacing = True + { chkCreateFrom CheckBox + MoveScaled(0,0,9,4) + AutoResize = True + Text = ("From") + } + { cmbCreateFrom ComboBox + MoveScaled(9,0,20,4) + Enabled = False + Expand = True + ReadOnly = True + } + } } } } diff --git a/app/src/gambas3/.src/Connection/MConnection.module b/app/src/gambas3/.src/Connection/MConnection.module index ecac19cba..da363f455 100644 --- a/app/src/gambas3/.src/Connection/MConnection.module +++ b/app/src/gambas3/.src/Connection/MConnection.module @@ -334,6 +334,24 @@ Finally End +Public Sub GetTemplates() As String[] + + Dim sFile As String + Dim aConn As New String[] + + For Each sFile In Dir(Project.Dir &/ ".connection", "*.template") + sFile = File.BaseName(sFile) + If Not Exist(Project.Dir &/ ".connection" &/ sFile & ".connection") Then Continue + aConn.Add(sFile) + Next + aConn.Sort + +Finally + + Return aConn + +End + Public Sub FillViewWithTables(lvwTable As TreeView, hConn As Connection, bShowSystem As Boolean) Dim hTable As Table diff --git a/main/lib/db/gb.db/.settings b/main/lib/db/gb.db/.settings index a182e346e..b292a634c 100644 --- a/main/lib/db/gb.db/.settings +++ b/main/lib/db/gb.db/.settings @@ -19,10 +19,10 @@ SearchString=True [OpenFile] File[1]=".src/Main.module:0.16" -Active=2 +Active=3 File[2]=".src/Connections.class:41.180" Count=4 -File[3]=".src/Connection.class:2.133" +File[3]=".src/Connection.class:0.233" File[4]=".src/SQLRequest.class:2.57" [Watches] diff --git a/main/lib/db/gb.db/.src/Connection.class b/main/lib/db/gb.db/.src/Connection.class index 78d08c1be..c61923fdb 100644 --- a/main/lib/db/gb.db/.src/Connection.class +++ b/main/lib/db/gb.db/.src/Connection.class @@ -226,6 +226,26 @@ Public Sub GetTemplate() As String End +Public Sub Copy() As Connection + + Dim hConn As Connection + + hConn = New Connection + hConn.Host = Me.Host + hConn.IgnoreCharset = Me.IgnoreCharset + hConn.Name = Me.Name + hConn.Password = Me.Password + hConn.Port = Me.Port + hConn.Timeout = Me.Timeout + hConn.Type = Me.Type + hConn.User = Me.User + + Return hConn + +End + + + Private Function SQL_Read() As SQLRequest Return New SQLRequest(Me)