[GRASS-dev] [GRASS GIS] #88: opt->guisection and opt->label for a better GUI world

#88: opt->guisection and opt->label for a better GUI world
---------------------+------------------------------------------------------
Reporter: hamish | Owner: grass-dev@lists.osgeo.org
     Type: task | Status: new
Priority: minor | Milestone: 6.4.0
Component: default | Version: unspecified
Keywords: |
---------------------+------------------------------------------------------
this was wish # 238 on the old gforge system. moving it here.
http://wald.intevation.org/tracker/index.php?func=detail&aid=238&group_id=21&atid=188

----
2006-11-18

> I have updated a few complicated modules to use opt->guisection for
nicer
> GUI menus using tabs.
{{{
> d.legend
> d.vect
> r.report
> r.watershed
> r.sunmask
> v.buffer
> v.label
>
> already done by Cedric:
> r.in.wms
> g.region
>
> to be done:
> (see below)
}}}
> Wierdness-
>
> order of tabs:
> the tab containing the first flag determines which tab comes first.
> the default tab "Options" should always be first.
>

> tcltk bug:
> guisections with a space in them cause a tcl error (quoting? list vs
string?)
> e.g. r.watershed, r.sunmask (I've used underscores)
>

> I also updated parser.c to use opt->label a little more. (if opt->label
> is used, it becomes the option's description, and the opt->description
> text becomes the tooltip.

> Suggestion- opt->description is long established, don't mess with it.
> change opt->label to opt->tooltip and reverse its meaning.
> Tooltips are good.

> Suggestion 2- move G_define_module(), G_define_flag(),
G_define_option(),
> and G_define_standard_option() out of parser.c. It's a 2,500 line long
> monster.
>

> back to guisection:
> The hierarchical rule of thumb is if it has more than 12 subordinates,
> split it into smaller groups. But it's not a hard rule, e.g. I think
> r.in.xyz is ok in a single tab.
>

> here are the modules with more than 12 options+flags. I have removed
> the ones already mentioned above.
{{{
> cd $GISBASE/docs/html/
> # ($1 -2) is to ignore --q,--v
>
> grep "<DT><b>" * | cut -f1 -d: | uniq -c | sort -n | \
> awk '{if($1 -2 > 12) print }' | sed -e 's/\.html$//'
}}}

[rerun 11 Mar 2006]
{{{
      15 d.grid
      15 d.path
      15 d.vect.chart
      15 g.remove
      15 i.atcorr
      15 r.terraflow
      15 v.net.path
      16 d.legend
      16 d.nviz
      16 r3.out.vtk
      16 r.ros
      17 g.proj
      17 r.cost
      17 r.in.xyz
      17 r.out.vtk
      17 r.report
      17 v.distance
      18 r.topmodel
      19 r.in.bin
      19 r.le.patch
      19 r.slope.aspect
      19 v.in.ascii
      19 v.lrs.create
      20 d.text.freetype
      20 d.text
      20 r3.gwflow
      20 r.stats
      20 r.sunmask
      20 r.walk
      20 r.watershed
      20 v.transform
      21 r.resamp.rst
      21 r.spread
      22 r.texture
      22 v.in.ogr
      23 r.sim.sediment
      23 v.generalize
      23 v.lrs.label
      24 r.sun
      24 v.edit
      25 v.label
      26 r.gwflow
      26 r.in.wms
      27 r.sim.water
      27 v.vol.rst
      28 d.vect.thematic
      31 v.surf.rst
      33 d.vect
      36 g.region
}}}

old bug history: (reverse order)
{{{

Followup:
Message

Date: 2007-04-22 21:27
Sender: Hamish B

v.distance is done.

Hamish

Date: 2007-03-23 17:28
Sender: Hamish B

v.in.ascii is done.

Hamish

Date: 2006-11-27 17:10
Sender: Hamish B

d.vect.thematic has been done by Michael.

d.what.vect is a false positive.

This leaves these ones TODO:

15 g.remove
15 r.flow
15 r.terraflow
16 d.nviz
16 r.out.vtk
16 r3.out.vtk
16 r.ros
16 d.text.new
17 d.text.freetype
17 r.cost
17 v.distance
17 v.lrs.create
18 r.topmodel
19 r.le.patch
20 r.stats
20 r.walk
20 v.in.ogr
21 r.spread
21 v.in.ascii
21 v.lrs.label

Hamish

Hamish

Date: 2006-11-22 14:50
Sender: Hamish B

v.vol.rst
r.texture
r.resamp.rst

are done.

Hamish

Date: 2006-11-19 04:03
Sender: Hamish B

v.transform is done.

Hamish

Date: 2006-11-19 03:47
Sender: Hamish B

done for these:

r.sim.water
r.sim.sediment
r.slope.aspect
r.in.bin
r.sun
v.surf.rst

these remain:
> 15 d.what.vect
> 15 g.remove
> 15 r.flow
> 15 r.terraflow
> 16 d.nviz
> 16 d.text.new
> 16 r.out.vtk
> 16 r.ros
> 16 r3.out.vtk
> 16 v.transform
> 17 d.text.freetype
> 17 r.cost
> 17 v.distance
> 17 v.lrs.create
> 18 r.topmodel
> 19 r.le.patch
> 20 r.stats
> 20 r.walk
> 20 v.in.ogr
> 21 r.resamp.rst
> 21 r.spread
> 21 v.in.ascii
> 21 v.lrs.label
> 23 r.texture
> 26 v.vol.rst
> 28 d.vect.thematic

}}}

--
Ticket URL: <http://trac.osgeo.org/grass/ticket/88&gt;
GRASS GIS <http://grass.osgeo.org>
GRASS Geographic Information System (GRASS GIS) - http://grass.osgeo.org/

#88: opt->guisection and opt->label for a better GUI world
------------------------+---------------------------------------------------
Reporter: hamish | Owner: grass-dev@…
     Type: task | Status: new
Priority: minor | Milestone: 6.4.4
Component: Default | Version: unspecified
Keywords: guisection | Platform: All
      Cpu: All |
------------------------+---------------------------------------------------
Changes (by hamish):

  * keywords: => guisection
  * platform: => All
  * cpu: => All
  * milestone: 6.4.0 => 6.4.4

Comment:

lots done by Martin et al., but still ongoing.

need to re-run the 'grep' to check the current status.

(I'd also argue that tabs with only 1 or 2 items in them might be worth
reconsidering for a merge with another tab; if the module only has 4
options, no point in making the user look in 3 pages..)

Hamish

--
Ticket URL: <https://trac.osgeo.org/grass/ticket/88#comment:1&gt;
GRASS GIS <http://grass.osgeo.org>

#88: opt->guisection and opt->label for a better GUI world
------------------------+---------------------------------------------------
Reporter: hamish | Owner: grass-dev@…
     Type: task | Status: new
Priority: minor | Milestone: 6.4.4
Component: Default | Version: unspecified
Keywords: guisection | Platform: All
      Cpu: All |
------------------------+---------------------------------------------------

Comment(by martinl):

Is this bug report still relevant?

--
Ticket URL: <http://trac.osgeo.org/grass/ticket/88#comment:2&gt;
GRASS GIS <http://grass.osgeo.org>

#88: opt->guisection and opt->label for a better GUI world
----------------------+-----------------------------------------------------
  Reporter: hamish | Owner: grass-dev@…
      Type: task | Status: closed
  Priority: minor | Milestone: 6.4.4
Component: Default | Version: unspecified
Resolution: fixed | Keywords: guisection
  Platform: All | Cpu: All
----------------------+-----------------------------------------------------
Changes (by wenzeslaus):

  * status: new => closed
  * resolution: => fixed

Comment:

Replying to [comment:2 martinl]:
> Is this bug report still relevant?

Apparently not, closing. Please, open a new ticket with a specific
description of a given problem if needed.

--
Ticket URL: <https://trac.osgeo.org/grass/ticket/88#comment:3&gt;
GRASS GIS <http://grass.osgeo.org>