Giter Site home page Giter Site logo

guidata's People

Contributors

ceavirginie avatar laubry avatar pierreraybaut avatar

Watchers

 avatar

guidata's Issues

Inheritance issue with custom dataset items

What steps will reproduce the problem?
1. Run the attached file in ipython
2. A gui will show up. Enable on of the two check boxes to enable editing of 
the items in the corresponding group.
3. Click OK.
4. Reopen gui in ipython (> gp.edit()  )
5. Both subgroup are editable although only one of them was enabled.

Ideally I would expect that the gui remains consistent before and after closing 
the gui for the first time. This I believe is because both parameter items 
belong to the same class and share class variables. So when one of them gets 
edited, the variable is also effected on the other instances of the same class.


I have tried this on Ubuntu 12.10 with guidata v1.5.1


I do not want to explicitly instantiate different variables for each item as in 
your example in the documentation.

http://packages.python.org/guidata/examples.html#data-item-groups-and-group-sele
ction


I would like to instantiate a gui with multiple objects of a user defined type. 
How do I do that ? Am I missing something fundamental here in my implementation 
?

Thanks and regards,
Sadique


Original issue reported on code.google.com by [email protected] on 12 Nov 2012 at 5:33

Attachments:

ERRORS & WARNINGS at installation of source ZIP

What steps will reproduce the problem?
1.guidata-1.4.1.zip
2.setup.py install
3.

What is the expected output? What do you see instead?
ERRORS and WARNINGS
- unexpected unindent
- Inline emphasiss start-string without end-string
- Block quote ends without a blank line, unexpected unident
- Inline interpreted text or phrase reference start-string without end-string
etc...

What version of the product are you using? On what operating system?
Windows XP SP3, python(x,y) 2.6.6.3

Please provide any additional information below.

All ERRORS are supressed by retyping lineskip and indentation
but still 11 WARNINGS. Probable invisibles characters unwanted on windows.

please find attached file with corrections

Loïc

Original issue reported on code.google.com by [email protected] on 18 Dec 2011 at 5:25

Attachments:

Example on main page is not working

What steps will reproduce the problem?

1. copy-paste example on project home page
2. start it with python
3. Get error :

QWidget: Must construct a QApplication before a QPaintDevice
Abandon

The problem is that the second line :

guidata.qapplication()

do not store the qapplication. Just replacing it with

a = guidata.qapplication()

do the trick.


What is the expected output?

Dialog should appear.


What do you see instead?

Error message


What version of the product are you using? On what operating system?

Debian sid


Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 16 Nov 2011 at 3:23

is there a stable userconfig lib?

I wanted to use the userconfig lib that I found mentioned in the guidata 
documentation.
It is stated that "It is the exact copy of the open-source package `userconfig` 
(MIT license)."  So I tried the example from the open source version 
(http://code.google.com/p/userconfig/downloads/list) but it did not work with 
the version in guidata.  

Some searching revealed that there are at least 3 versions of userconfig, all 
incompatible: the google version is 1.0.9, but there is a userconfig 1.0.13 in 
spiderlib and a version 1.0.7 in guidata (of WinPython-64bit-2.7.4.1).
It would seem that 1.0.13 is the most recent, but its copyright info dates it 
at 2009, while the 1.0.7 version mentions 2012.  Only the google version has an 
example of usage.  

Is the version in spyder maybe specific to spyder, while the version in guidata 
-or at google- is intended for general use?  Will there always be a divergence 
or will there be a convergence of all versions?

Is there already a version that is future safe?  Can it be used without having 
to include a copy of an old userconfig later?  And is it possible to provide an 
example of usage for that version (like for the google version)?


Original issue reported on code.google.com by [email protected] on 14 May 2013 at 9:53

Radio buttons?

Are there any plans to implement a radio button group?  Yes, it's similar to a 
ChoiceItem, and I can get by with that for now.  Still, the nice thing about a 
group of radio buttons is that all of the options are always viewable to the 
user and can be chosen with one click instead of two.

Original issue reported on code.google.com by [email protected] on 23 May 2013 at 12:37

Problem with "FilesOpenItem" data item

Using guidata 1.6.1.

I try to select a file that has a ' character in it using 
guidata.dataset.dataitems.FilesOpenItem. The selected file is not seen as valid 
by guidata (text area remains orange).

Modifying the "from_string" method of FilesOpenItem in order to change the line

"if value.endswith("']"):"

to

"if value.endswith("']") or if value.endswith('"]'):"

seems to solve the problem

Original issue reported on code.google.com by [email protected] on 25 Feb 2015 at 10:32

FloatItem slider doesn't retain position

What steps will reproduce the problem?
1. Run the code attached in issue #24 in Ipython
2. Change the value on the sliders and close the window
3. Reopen the window with gp.edit()

What is the expected output? What do you see instead?

The sliders should ideally retain their position reflecting the value of the 
FloatItem, but they seem to always initialize at MIN every time the window is 
initialized.

What version of the product are you using? On what operating system?

guidata-1.5.1, Ubuntu 12.10

Please provide any additional information below.

I noticed you had sliders in some of your demo/example code. Could you please 
test and see if the same happens with them, and eventually fix the problem ? 
Thanks!

Original issue reported on code.google.com by [email protected] on 15 May 2013 at 12:23

guidata 1.4 and disthelpers changes

What steps will reproduce the problem?

I can't make functionnal dictedit and arrayedit with py2exe distribution. 
DO YOU HAVE SOME ADVISE ABOUT SETUP OPTIONS in order to use arrayedit and 
dictedit ?

What is the expected output? What do you see instead?


I updated guidata from 1.3 to 1.4, but no change on arrayedit and dictedit with 
py2exe.
So I tried to use disthelpers in order to resolve a probable problem in setup 
options in py2exe. But disthelpers completly change from 2.3 version

- No doc at all for disthelpers, apart a basic example 
- disthelper seems to be unachieved. DO YOU PLANE some improvements ?
- setup() method support only ONE file script ?
- disthelpers is supposed to support py2exe, but I doesn't. So I try to fix the 
setup() method by adding argument library (see attached file)

IS DISTHELPERS A GOOD IDEA TO RESOLVE THE PROBLEM OF ARRAYEDIT AND DICTEDIT ?

What version of the product are you using? On what operating system?
1.4 windows XP SP3

Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 18 Dec 2011 at 6:54

Attachments:

Disthelpers fails with vs2008=False

What steps will reproduce the problem?
1. Use disthelpers add_modules function with vs2008=False


What is the expected output? What do you see instead?
Error in disthelpers.py line 202: 2. remove_at_exit(vc90man)
because vc90man is only defined is vs2008 is True

What version of the product are you using? On what operating system?
Windows XP, guidata 1.3.1

Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 15 Jun 2011 at 1:50

request: persistent settings

It would be nice if userconfig (or something similar) is integrated in guidata 
behind the scenes.  This would mean that all GUI settings are automatically 
saved in an ini file, so that they become persistent: they will be 
automatically restored at the next run.

Original issue reported on code.google.com by [email protected] on 14 May 2013 at 12:16

missing manpage and .desktop file for guidata-tests

Hello

lintian, one of the quality assurance software of Debian complain about a 
missing manpage for /usr/bin/guidata-test.
It would be also interesting to provide a .desktop file like the one attached

I let you fill correctly to your opinion the MIME type and the Catégories.

thanks



Original issue reported on code.google.com by [email protected] on 4 Jan 2011 at 9:19

Attachments:

PB with dictItem

Hello,

if you test this scipt :

import guidata
_app = guidata.qapplication() # not required if a QApplication has already been 
created

import guidata.dataset.datatypes as dt
import guidata.dataset.dataitems as di

class Processing(dt.DataSet):
    """Example"""
    dico = {}
    dico["P1"]=(10,23)
    dico["P2"]=(12,45)
    a = di.FloatItem("Parameter #1", default=2.3)
    b = di.IntItem("Parameter #2", min=0, max=10, default=5)
    type = di.ChoiceItem("Processing algorithm",
                         ("type 1", "type 2", "type 3"))
    toto = di.DictItem("test", default=dico)

param = Processing()
param.edit()

when you edit the dict item value the windows with the value is behind all over 
windo and not editable ...

Sylm,

Original issue reported on code.google.com by [email protected] on 3 Jun 2013 at 7:13

view() method of DataSet does not support ButtonItem items

What steps will reproduce the problem?

from guidata.dataset.datatypes import DataSet
from guidata.dataset.dataitems import FloatItem, ButtonItem


def callback(dataset, item, value, parent):
    print dataset


class FailingDataSet(DataSet):
    x = FloatItem('x', default=2.3)
    b = ButtonItem('Press me', callback)


if __name__ == '__main__':
    import guidata
    app = guidata.qapplication()

    f = FailingDataSet()
    f.view()  # --> KeyError: <class 'guidata.dataset.dataitems.ButtonItem'>



What is the expected output? What do you see instead?

Expect: opens a dialog    
Get: KeyError


What version of the product are you using? On what operating system?
guidata-1.4.0-py2.7 on linux, fc16


Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 18 Dec 2011 at 9:33

plot and prm.view/prm.edit in guidata

What steps will reproduce the problem?
1. write a guidata code
2. plot data before/after writing prm.view/prm.edit
3. run in a new terminal (in spyder)

What is the expected output? What do you see instead?
the expected output is to be able to move from the gui window to the plot 
window (and to use its features). when the command of plot comes before the 
command of prm.view/edit i cannot move from the gui window (which is on the 
"front") to the plot window. When when it comes after the gui window, the gui 
works fine but the plot window starts and shuts immediately after pressing "Ok" 
on the gui.

What version of the product are you using? On what operating system?
i use spyder 2.0.5 on windows 7

Please provide any additional information below.



Original issue reported on code.google.com by [email protected] on 24 May 2012 at 5:26

FileWidget fails when embedded too far

What steps will reproduce the problem?
1. Create a DataSet with a FileItem in a Group in a TabGroup
2. Click the file chooser button

What is the expected output? What do you see instead?
AttributeError: parent doesn't have child_title

What version of the product are you using? On what operating system?
Windows XP, guidata 1.3.1

Please provide any additional information below.
Maybe need to search for a parent with child_title:

def _find_child_title(p):
    if p is None: return lambda x: ''
    try: return p.child_title
    except AttributeError: return _find_child_title(p.parent())
child_title = _find_child_title(parent)
fname = self.filedialog(parent, child_title(self.item), fname,
                        "\n".join(filter_lines))

instead of existing

try:
    child_title = parent.child_title
except AttributeError:
    child_title = parent.parent().child_title
fname = self.filedialog(parent, child_title(self.item), fname,
                        "\n".join(filter_lines))

Original issue reported on code.google.com by [email protected] on 10 Aug 2011 at 4:50

UserConfigWriter/Reader missing write_bool/read_bool

What steps will reproduce the problem?
1. Try to write BoolItem with UserConfigWriter

What is the expected output? What do you see instead?
UserConfigWriter and UserConfigReader appear to be missing write_bool and 
read_bool methods.

Workaround:
guidata.userconfig.UserConfigWriter.write_bool = 
guidata.userconfig.UserConfigWriter.write_any
guidata.userconfig.UserConfigReader.read_bool = 
guidata.userconfig.UserConfigReader.read_any


What version of the product are you using? On what operating system?
Windows XP, guidata 1.3.1

Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 25 Jul 2011 at 9:27

bug in use DirectoryItem with QSplitter

What steps will reproduce the problem?

1. In the file guidata/tests/editgroupbox.py, add this line :
test = DirectoryItem("test") in the class OtherDataSet (don't forget to add 
DirectoryItem in the import statement
2. Run the programm
3. Click on the icon 'folder'

What is the expected output? What do you see instead?

There is an error : 
line 517 in qtitemwidgets, child_title = parent.parent().child_title
AttributeError : 'QSplitter' object has no attribute 'child_title'
I would like see a window which can permit me to choose the path of a directory

What version of the product are you using? On what operating system?

Version 1.2.5 on Windows XP sp3

Please provide any additional information below.

I propose this modification of the qtitemwidgets.py file : 
516 try:
517     child_title = parent.child_title
518 except AttributeError:
519     child_title = parent.parent().child_title

I got the idea in the definition of fileWidget ten lines before.



Original issue reported on code.google.com by [email protected] on 25 Jan 2011 at 10:41

guidata et matplotlib

Bonjour,

Y a t il un moyen de contourner les 2 limitations que je rencontre en 
générant un graphique matplotlib depuis une interface guidata :

1. l'utilisateur final doit sortir de l'interface guidata pour prendre la main 
sur le graphique.  Dommage, car ma façon de lancer l'interface guidata dans 
une boucle infinie est rendue inutile (simple et pratique pour éviter de 
relancer l'interface à chaque run) cf. test.py

2.  une petite classe permet de rendre draggable un texte matplotib, à 
condition que l'application reste active (cf. test3.py). 
(http://www.scipy.org/Cookbook/Matplotlib/Drag_n_Drop_Text_Example). La classe 
est donc inopérante si je suis obligé de sortir de l'interface guidata. Je 
supprime donc la boucle infinie  (cf. test2.py), mais le texte n'est toujours 
pas draggable à cause semble t il de l'instruction guidata.qapplication(), 
rendue nécessaire par guidata.

Merci pour cette librairie qui permet de se concentrer sur les algorithmes, 
tout en bénéficiant d'une interface GUI formidable.

Loïc

Original issue reported on code.google.com by [email protected] on 14 Jun 2011 at 9:12

Attachments:

UserConfigWriter missing function writer

What steps will reproduce the problem?
1.
from guidata.dataset.datatypes import *
from guidata.dataset.dataitems import *
from guidata.userconfig import *

class DS(DataSet):
  f = FloatItem('F', 1.0)

ds = DS('')
uc = UserConfig({})
uc.set_application('app','1.0.0')
ds.write_config(uc,'a','b')

What is the expected output? What do you see instead?

Expected to save data set to ini file:
[main]
version = 1.0.0

[a]
b/f = 1.0

but throws exception because UserConfigWriter created in 'write_config' is 
missing the function 'write', used by DataItem.serialize

What version of the product are you using? On what operating system?
 1.5.1-1 on Windows XP, pythonxy 2.7.3.1

Please provide any additional information below.

This is a workaround
from guidata.userconfigio import UserConfigWriter
UserConfigWriter.write = UserConfigWriter.write_any

Original issue reported on code.google.com by [email protected] on 15 Jan 2013 at 9:53

Suggestions for enhancing FileOpenItem, FileSaveItem, FileDirectoryItem classes

1. Include a "notempty" parameter, allowing to control if the field can be 
empty or not

2. Include an "icon" parameter, allowing to set an icon different from the 
defaults provided

3. Modify the "help" parameter, allowing to entirely override the messages 
presented by default 

Original issue reported on code.google.com by maurobio on 18 Oct 2014 at 11:29

ButtonItem and DirectoryItem do not work together

What steps will reproduce the problem?
1. Create a DataSet with a ButtonItem (the callback need do nothing) and a 
DirectoryItem (or another Item with a field and a button - File items etc)
2. Change the value of the DirectoryItem
3. Click the button

What is the expected output? What do you see instead?
After clicking the button, nothing should have changed. What happens is that 
the DirectoryItem's value reverts to its original value.

This is because ButtonItem.clicked() calls widget.get() on each widget, the 
directory widget is reset with the DirectoryItem's value. This has not been 
changed, only the line edit's text has been set.

What version of the product are you using? On what operating system?
Windows XP, guidata 1.3.1

Please provide any additional information below.


Original issue reported on code.google.com by [email protected] on 14 Jul 2011 at 5:14

guidata 1.3.2 is not yet compatible with PyQt v4.4

What steps will reproduce the problem?

doing "python setup.py install" on a machine with PyQt 4.4

What is the expected output? What do you see instead?

It should install, but I get the following exception:
sicilia@controls01:.../guidata-1.3.2> python setup.py install 
Traceback (most recent call last):
  File "setup.py", line 52, in <module>
    from guidata import __version__ as version
  File ".../guidata/__init__.py", line 540, in <module>
    import guidata.config
  File ".../guidata-1.3.2/guidata/config.py", line 15, in <module>
    from guidata.configtools import add_image_module_path, get_translation
  File ".../guidata-1.3.2/guidata/configtools.py", line 22, in <module>
    from guidata.qt.QtCore import Qt
  File ".../guidata-1.3.2/guidata/qt/QtCore.py", line 12, in <module>
    from PyQt4.QtCore import pyqtSignal as Signal
ImportError: cannot import name pyqtSignal


What version of the product are you using? On what operating system?

guidata 1.3.2 on a Suse 11.1


Please provide any additional information below.

-I think that PyQt4.QtCore.pyqtSignal was introduced in PyQt>=4.5

-This prevents the installation of guiqwt 2.1.4 as well (because it depends on 
guidata 1.3.2).

-many changes were introduced both in  guiqwt 2.1.4 and in guidata 1.3.2 in 
order to make them compatible with PyQt 4.4, but this newly introduced issue 
invalidates them

Original issue reported on code.google.com by [email protected] on 26 Jul 2011 at 1:25

Source code repository online

Hello,
I would like to import the sourcecode of this module into Launchpad.net in 
order to be able create Ubuntu packages of the module automatically.

Please load the guidata source code up to google code.

Thanks in advance.

Original issue reported on code.google.com by [email protected] on 20 Feb 2011 at 6:21

Problem updating a BoolItem

What steps will reproduce the problem?
I'm embedding a dataset within a simple application using a DataSetEditGroupBox 
and I'm updating the values of the dataset as I choice entries in my 
'database'. One field is a BoolItem and I've found that I couldn't set it to 
False after it was True. 

So in pseudo code 

class test(DataSet):
   boolitem = BoolItem("t/f")


class panel(QWidget):
   def __init__(self):
       QWidget.__init__(self)
       ...
       self.dataseteditgroupbox = DataSetEditGroupBox("event", test)
       ...

   def somemethod(self): #update values in dataset
       ...
       self.dataseteditgroupbox.dataset.boolitem = False #this doesn't work
       self.dataseteditgroupbox.get()

What version of the product are you using? On what operating system?
I'm using version 1.6.1-3 on python2.7 on win32.

Please provide any additional information below.
I've found that the issue is due to the get() method of the CheckBoxWidget 
class in qtitemwidget.py. So changing the method to this fixes my problem

class CheckBoxWidget(AbstractDataSetWidget):

    ...

    def get(self):
        """Override AbstractDataSetWidget method"""
        value = self.item.get()
        if value:
            self.checkbox.setChecked(True)
        else:
            self.checkbox.setChecked(False)

I'm quite new to guidata so although I think that this is a bug, it could also 
be that I'm not using it the right way.

Original issue reported on code.google.com by [email protected] on 11 Jun 2014 at 8:59

CX_Freeze and guidata/guiqwt works on windows not on Linux

What steps will reproduce the problem?
1. Create a simple script (e.g. example given at the top of page 
http://code.google.com/p/guidata/)
2. Freeze using cx_Freeze

I used the following setup file
    import sys
    import os

"""Create a stand-alone executable"""

try:
    import guidata
    from guidata.disthelpers import Distribution
    except ImportError:
        raise ImportError, "This script requires guidata 1.4+"



    def create_executable():
        """Build executable using ``guidata.disthelpers``"""
        dist = Distribution()
        dist.setup(name='Foo', version='0.1',
               description='bar',
               script="test.py", target_name='test.exe')
        dist.add_modules('guidata', 'guiqwt')
        # Building executable
        dist.build('cx_Freeze')

    if __name__ == '__main__':
        create_executable()




What is the expected output? What do you see instead?

The executable gets built, but when attempted to run. It gives the error

    OSError: [Errno 20] Not a directory: '/home/user/tmp/dist/library.zip/guidata/images'

What version of the product are you using? On what operating system?
guidata 1.5.1 Linux

In windows this works fine!

Please provide any additional information below.

I traced the problem to the lines

    parentdir = osp.join(datapath, osp.pardir)
    if osp.isfile(parentdir)

in configtools.py file. 

See the following link where I posted a temporary hack to avoid the issue for 
the moment. 
http://stackoverflow.com/questions/14111366/cx-freeze-and-guiqwt-works-on-window
s-not-on-linux/14129726#14129726

Original issue reported on code.google.com by [email protected] on 2 Jan 2013 at 10:00

Does guidata support unicode?

I'm using Windows7_X64 and the system language is Chinese. When I use guidata 
to select paths that contain Chinese charactors, it will report an encoding 
error and exit.
Is there any possible solutions for this?

Original issue reported on code.google.com by [email protected] on 26 Apr 2011 at 10:39

Set window size

Hi guys, thank you for creating this package it is really useful
I was wondering whether it is possible to set the of the window with some 
parameters? For example something like:

class MyGui(dt.DataSet):
      SetWindowSize(800,600)

What version of the product are you using? On what operating system?
Guidata 1.4.1, Ubuntu 11.10 64 bits

Thanks !


Original issue reported on code.google.com by [email protected] on 11 Apr 2012 at 12:53

from guidata import tests; tests.run() - Most Tests Do Not Function Properly with Pyside

What steps will reproduce the problem?

1. Remove PyQT and Install Pyside
2. Run the tests
3. Run-time warning about Pyside not fully supported will appear in console

What is the expected output? What do you see instead?

The GUI's appear,but there does not seem to be any communication between the UI 
controls. Changing one will not affect any of the others. Slider will not 
change the text box value, etc. (as it does using PyQt).

What version of the product are you using? On what operating system?

Guidata V1.6.1
Pyside 1.2.2
Python 2.7.3

Tested under Win7 and Kubuntu 12.04LTS - same result.



Original issue reported on code.google.com by [email protected] on 27 Aug 2014 at 10:49

wrong handling of None values in py3compat.py:to_text_string

I had some problems with the automatic checking of text related DataItems in 
guidata 1.6.1. 

Looking inside the code I found that the function to_text_string returns 
u"None" for a None input value. This results in valid empty text fields with 
a missing default value.

To reproduce this problem, just create a dialogue 

   class Parameters(dt.DataSet):
        x_user_name = di.StringItem("Full Name", notempty=True)
        y_user_name = di.StringItem("Full Name", notempty=True, default="")

   Parameters().edit()


Original issue reported on code.google.com by [email protected] on 28 Aug 2013 at 2:44

DirectoryItem used in a DataSetEditGroupBox fails to use the default value for the directory chooser

What steps will reproduce the problem?

using a DirectoryItem within a dataSet within a DataSetEditGroupBox.

What is the expected output? What do you see instead?

From the code and my understanding I expect that the default directory which 
shows up when clicking the button in a DataSetEditGroupBox should be generated 
from the default string given to the DirectoryItem. This is not the case.

What version of the product are you using? On what operating system?

Rolling update of Debian Testing. python-guidata 1.3.1-1 (debian)

Please provide any additional information below.

The problem can be easily fixed by changing os.path.basename to os.path.dirname 
in in the dname=... statement in the function DirectoryWidget.select_directory 
in the file qtitemwidgets.py. (OK, creating a diff/patch file would have been 
easier than describing how to fix it :-) 


Original issue reported on code.google.com by [email protected] on 9 Jul 2011 at 1:27

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.