Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b430Q-0000kS-MN for pgadmin-hackers@arkaria.postgresql.org; Sat, 21 May 2016 09:15:34 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1b430P-0002hV-Iu for pgadmin-hackers@arkaria.postgresql.org; Sat, 21 May 2016 09:15:33 +0000 Received: from makus.postgresql.org ([2001:4800:1501:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1b430O-0002gy-5M for pgadmin-hackers@postgresql.org; Sat, 21 May 2016 09:15:32 +0000 Received: from mail-io0-x232.google.com ([2607:f8b0:4001:c06::232]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1b430G-0002e7-98 for pgadmin-hackers@postgresql.org; Sat, 21 May 2016 09:15:30 +0000 Received: by mail-io0-x232.google.com with SMTP id t40so73841202ioi.0 for ; Sat, 21 May 2016 02:15:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=pgadmin-org.20150623.gappssmtp.com; s=20150623; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=1dHIlN5RSYG4Tpc+fsvQugLfeJOFSKpULPfk2u8veuA=; b=es2kkrDonL5uvRc0iGZ3MpV0cAdnepc4D9u4Qtnc8TBdujsgo4SjS0aELjmMvjpQAJ /1zz9tyGiH3vj6yxxWgofi6CO+xhu+g1cF3dJtYcbOL7x/+MuArKQ/kW+p49vx9SBAwk Dq/yBJW5iGb6LWGT7yv9ptK5TFMf/frUSRBrUVGaHA2C1JKjETYQLpyQBbhJj5Z4WLOK wLz4DtHIp4RsiOmOsJiwngFOwx7GarSuB6PttleGieFcMKlfSKnvvGXbtkWDdC/QynhW UvVeyZtPliIjRScCREKJXw0cPt5adA7JVIiz3OfwwMmlCEJtplyKoL2A7wEtYAHMufwf k/vQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=1dHIlN5RSYG4Tpc+fsvQugLfeJOFSKpULPfk2u8veuA=; b=WtP5lPLhb+lZbiMgT4tiqUOaWeAPkIo5VqC2ChAfu3LE6Q+hHSEya/W2lFx1LyaBdA eLGvd3ZCvjvKjkjPzHY6i/7+LhMGLdkrymmry9mKPgB20mjtwVIa8r3ff0M2ejYLkO5i bmae55CVLj2y34PJ09G+XTRFBmK4oBqRAOgy31iHZwROyaFgBGPnTleuugJgML0xwOY2 RCDLGZhlhSOgxBKQODW3Hiqk9uQJYSq5rGyEpzSDHe9f+7nXHZm2WKDxUIdbWZaeM+5P TwTLWIlXh5xbbPkrhtip+b3oXF7JqxZL5ZZPtNijQ5n9IvHUCaHYh6sOJehEhsblOrLS iZJA== X-Gm-Message-State: AOPr4FUZk+yJeN2az/Gu20UhW+0hszNDvJb/YVYC8zm5p9mDuxDzkihgTEodh/1r0G920w== X-Received: by 10.36.47.136 with SMTP id j130mr6211868itj.48.1463822122612; Sat, 21 May 2016 02:15:22 -0700 (PDT) Received: from [172.20.5.171] (69-165-178-18.dsl.teksavvy.com. [69.165.178.18]) by smtp.gmail.com with ESMTPSA id j124sm696852ita.8.2016.05.21.02.15.21 (version=TLSv1/SSLv3 cipher=OTHER); Sat, 21 May 2016 02:15:21 -0700 (PDT) Content-Type: multipart/alternative; boundary=Apple-Mail-05EAFEAF-38B0-4EA9-BEDA-38ADE7C3EFCE Mime-Version: 1.0 (1.0) Subject: Re: [PATCH] Tables node (pgAdmin4) From: Dave Page X-Mailer: iPad Mail (13E238) In-Reply-To: Date: Sat, 21 May 2016 10:15:20 +0100 Cc: Akshay Joshi , Harshal Dhumal , pgadmin-hackers Content-Transfer-Encoding: 7bit Message-Id: References: To: Ashesh Vashi X-Pg-Spam-Score: -2.6 (--) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgadmin-hackers Precedence: bulk Sender: pgadmin-hackers-owner@postgresql.org --Apple-Mail-05EAFEAF-38B0-4EA9-BEDA-38ADE7C3EFCE Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable I think that makes sense, yes. Sent from my iPad > On 21 May 2016, at 04:12, Ashesh Vashi wro= te: >=20 >=20 >> On Sat, May 21, 2016 at 12:01 AM, Dave Page wrote: >> Hi >>=20 >> I just started to take a look at the table dialogue and friends. Here are= a few issues that we need to address - please take care of them: >>=20 >> 1) Move columns to their own tab. Vertical scrolling is bad. > Should the 'inherit from table' part of columns tab?=20 >>=20 >> 2) Similarly, move constraints to their own tab. >>=20 >> 3) Ensure all labels only have a capital letter on the first word, except= if following words are keywords or acronyms, e.g. >>=20 >> With default values? >> Has OIDs? >> =20 >> 4) s/System tabel?/System table? >>=20 >> 5) Error messages on fields should not be shown unless the field loses fo= cus and has an error (see Create Table) >>=20 >> 6) The sections on the Properties view are not as they should be. As I've= pointed out before, the "General" section should have a limited subset of i= nformation, e.g. name, oid, owner, tablespace, comment and "is system?" Othe= r properties should be in other appropriate sections. >>=20 >> 7) Variables grids should not be on the Security tab (as also mentioned p= reviously). >>=20 >> 8) Field labels that imply a question (e.g. usually those with a Yes/No s= witch for input) should end in a ? - e.g. "Deferrable?" >>=20 >> 9) On the Trigger dialogue, "Fires" and following controls should move to= a new tab. >>=20 >> 10) On the MV dialogue, VACUUM settings should be on their own tab, as on= the Table dialogue. >>=20 >> 11) Privileges controls on the Properties lists should be in a "Security"= group, not "General" >>=20 >> I think there are a couple of basic principles to follow here: >>=20 >> - Make properties lists and dialogues consistent with existing ones, from= control grouping right down to spelling and case of labels. >>=20 >> - Dialogs should never need vertical scrolling by default (e.g. for a new= object with no columns/constraints/whatever yet defined). If you need to sc= roll, then things should be moved to a new tab, grouped as appropriate. >>=20 >> Thanks. >>=20 >>> On Fri, May 20, 2016 at 7:57 AM, Akshay Joshi wrote: >>> Thanks - Committed with minor changes. >>>=20 >>>> On Thu, May 19, 2016 at 10:47 PM, Harshal Dhumal wrote: >>>> Hi, >>>>=20 >>>> PFA updated patch for table and all it's child nodes (Version 9). This p= atch does not depend on any of existing table node patch. >>>>=20 >>>> Major change in this patch: Unlike pgAdmin3 now in table create mode an= y constraint(s) created (but not saved) will listen to table column changes a= nd adapt themselves accordingly. >>>>=20 >>>> For e.g. >>>> In table create mode user adds column definition with name "col1" then a= dds constraint which includes column "col1". Now user changes column name to= "col2" then constraint will listen to this change and adapt the column name= from "col1" to "col2" in constraint definition. Also if column "col2" is re= moved then constraint will also remove the column "col2" from it's definitio= n. >>>>=20 >>>>=20 >>>> --=20 >>>> Harshal Dhumal >>>> Software Engineer=20 >>>>=20 >>>>=20 >>>>=20 >>>> EenterpriseDB >>>>=20 >>>>=20 >>>>=20 >>>> -- >>>> Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org) >>>> To make changes to your subscription: >>>> http://www.postgresql.org/mailpref/pgadmin-hackers >>>=20 >>>=20 >>>=20 >>> --=20 >>> Akshay Joshi >>> Principal Software Engineer=20 >>>=20 >>>=20 >>>=20 >>> Phone: +91 20-3058-9517 >>> Mobile: +91 976-788-8246 >>=20 >>=20 >>=20 >> --=20 >> Dave Page >> Blog: http://pgsnake.blogspot.com >> Twitter: @pgsnake >>=20 >> EnterpriseDB UK: http://www.enterprisedb.com >> The Enterprise PostgreSQL Company >=20 --Apple-Mail-05EAFEAF-38B0-4EA9-BEDA-38ADE7C3EFCE Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable
I think that makes sense, yes.

= Sent from my iPad

On 21 May 2016, at 04:12, Ashesh Vashi <<= a href=3D"mailto:ashesh.vashi@enterprisedb.com">ashesh.vashi@enterprisedb.co= m> wrote:


On Sat, May 21, 2016 at 12:01= AM, Dave Page <dpage@pgadmin.org> wrote:
Hi

I just started to t= ake a look at the table dialogue and friends. Here are a few issues that we n= eed to address - please take care of them:

1) Move c= olumns to their own tab. Vertical scrolling is bad.
Should the 'inherit from table' part of columns tab? 
<= blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #= ccc solid;padding-left:1ex">

2) Sim= ilarly, move constraints to their own tab.

3) Ensur= e all labels only have a capital letter on the first word, except if followi= ng words are keywords or acronyms, e.g.

  With= default values?
  Has OIDs?
  
4) s/System tabel?/System table?

5) Error messages= on fields should not be shown unless the field loses focus and has an error= (see Create Table)

6) The sections on the Properti= es view are not as they should be. As I've pointed out before, the "General"= section should have a limited subset of information, e.g. name, oid, owner,= tablespace, comment and "is system?" Other properties should be in other ap= propriate sections.

7) Variables grids should not b= e on the Security tab (as also mentioned previously).

8) Field labels that imply a question (e.g. usually those with a Yes/No s= witch for input) should end in a ? - e.g. "Deferrable?"

=
9) On the Trigger dialogue, "Fires" and following controls should move t= o a new tab.

10) On the MV dialogue, VACUUM setting= s should be on their own tab, as on the Table dialogue.

=
11) Privileges controls on the Properties lists should be in a "Securit= y" group, not "General"

I think there are a c= ouple of basic principles to follow here:

- Make pr= operties lists and dialogues consistent with existing ones, from control gro= uping right down to spelling and case of labels.

- D= ialogs should never need vertical scrolling by default (e.g. for a new objec= t with no columns/constraints/whatever yet defined). If you need to scroll, t= hen things should be moved to a new tab, grouped as appropriate.
<= br>
Thanks.

On Fri, May 20, 2016 at 7:57 AM, Akshay J= oshi <akshay.joshi@enterprisedb.com> wrote:
Thanks - Committed with minor cha= nges.

On Thu, May 19, 2016 at 10:47 PM, Harshal Dhumal <harshal.d= humal@enterprisedb.com> wrote:
Hi,

PFA updated patch for table and all it's child n= odes (Version 9). This patch does not depend on any of existing table node p= atch.

Major change in this pat= ch: Unlike pgAdmin3 now in table create mode any constraint(s) created (but n= ot saved) will listen to table column changes and adapt themselves according= ly.
For e.g.
In table create mode user adds column definition with name "col= 1" then adds constraint which includes column "col1". Now user changes colum= n name to "col2" then constraint will listen to this change and adapt the co= lumn name from "col1" to "col2" in constraint definition. Also if column "co= l2" is removed then constraint will also remove the column "col2" from it's d= efinition.


-- 
Harshal Dhumal
Software Engineer 





--
Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers




--



--
Dave Page
Blog: http://pgsnake.blogspot.= com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The En= terprise PostgreSQL Company

= --Apple-Mail-05EAFEAF-38B0-4EA9-BEDA-38ADE7C3EFCE--