drahnr / oregano Goto Github PK
View Code? Open in Web Editor NEWSchematic capture and circuit simulator
Home Page: https://ahoi.io
License: GNU General Public License v2.0
Schematic capture and circuit simulator
Home Page: https://ahoi.io
License: GNU General Public License v2.0
Configurable hotkeys for all common actions, like rotating, flipping parts, toggling labels, toggle the parts browser and selecting a new part to be placed on the sheet.
Input handling has a really messy design, it connects and disconnects signals all the time and also is not really encapsulated at all (just members of sheet).
Implement a back-stack for all kind of modifications (netlist, sheet/schematic). This is a rather big and complex task to hook it in everywhere properly.
If the rubberband gets near an edge, the sheet should move slowly in that direction.
.ui files are currently missing in the .pot file if generated by waf translate
Open a file, then close it.
oregano ask for saving changes, close without saving or discard.
Of course, this should not happened with an unmodified file.
Fix the translation option for waf and remote the ancient intl subdirectory
Demo of waf usage with intl https://github.com/krig/waf/tree/master/demos/intltool
g_signal_lookup_by_name is called before the class is setup
Replace useless error messages with something more sane, that actually tells you what to do or what went wrong.
It just sucks, see also #62
When we open any file but the top list file in the recent files list, make some change, save change, file stay at the same place in the list instead of going at the top of the list.
Could you tell me where is store this list in my computer?
Is there a config file?
Even if there are several opened windows, closing one window cause quit application
Still used or dino crappery?
By simply running oregano then clicking on the empty sheet, oregano carsh.
Trying to use gdb, I get the following output:
[alain@localhost ~]$ gdb oregano.bin
GNU gdb (GDB) Fedora (7.5.1-32.fc18)
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
...
Reading symbols from /usr/bin/oregano.bin...Reading symbols from /usr/lib/debug/usr/bin/oregano.bin.debug...
warning: "/usr/lib/debug/usr/bin/oregano.bin.debug": separate debug info file has no debug info
(no debugging symbols found)...done.
(no debugging symbols found)...done.
(gdb) run
Starting program: /usr/bin/oregano.bin
warning: "/usr/lib/debug/usr/lib64/libcairo-gobject.so.2.11200.8.debug": separate debug info file has no debug info
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
warning: "/usr/lib/debug/usr/lib64/libicudata.so.49.1.1.debug": separate debug info file has no debug info
[New Thread 0x7ffff0def700 (LWP 3126)]
[New Thread 0x7fffebfff700 (LWP 3127)]
Detaching after fork from child process 3128.
Detaching after fork from child process 3129.
Program received signal SIGSEGV, Segmentation fault.
g_list_foreach (list=list@entry=0x1 = {...}, func=0x40c830 , user_data=user_data@entry=0x0) at glist.c:941
941 GList *next = list->next;
(gdb) bt
#0 g_list_foreach (list=list@entry=0x1 = {...}, func=0x40c830 , user_data=user_data@entry=0x0) at glist.c:941
#1 0x000000328f444aab in g_list_free_full (list=0x1 = {...}, free_func=) at glist.c:183
#2 0x0000000000444cea in sheet_rubberband_timeout_cb ()
#3 0x000000328f4485db in g_timeout_dispatch (source=source@entry=0xe03170, callback=, user_data=) at gmain.c:4026
#4 0x000000328f447a55 in g_main_dispatch (context=0x6d5ed0) at gmain.c:2715
#5 g_main_context_dispatch (context=context@entry=0x6d5ed0) at gmain.c:3219
#6 0x000000328f447d88 in g_main_context_iterate (context=context@entry=0x6d5ed0, block=block@entry=1, dispatch=dispatch@entry=1, self=) at gmain.c:3290
#7 0x000000328f447e44 in g_main_context_iteration (context=0x6d5ed0, context@entry=0x0, may_block=may_block@entry=1) at gmain.c:3351
#8 0x000000329689a7ec in g_application_run (application=0x703040 [Oregano], argc=, argv=0x7fffffffdff8) at gapplication.c:1624
#9 0x000000000041d18a in main ()
The only difference with a few hours ago (same oregano code) is that I updated my distribution and restart my computer.
Now, I'm not able to use oregano :'
Search through all libraries - currently this is a nop
(schematic-view.c, line 852)
When compiled as release or run, there appear a lot of deprecated warnings
oregano seems to be a very common project name (ohloh, github and google yield ridiculously many) and I think right now is the proper point of time (not too many users, picking up speed) to think about a potentially chaning the project name.
So does anybody have an idea? I got a few, but I'd rather wait for a second+third opinion on a name change.
Just after running oregano, if we open a recent file (or create a new fie), this opens a second window.
IMHO, open recent file should only load the file in the existing window.
And I'm not sure this is a good idea to open a new window with "create a new file" if the current window is empty.
Just honor sheet->priv->empty
Just trying to build oregano, unfortunately, build fails:
[alain@localhost oregano-master]$ LANG=C waf debug
Waf: Entering directory /home/alain/tmp/oregano-master/build/debug' Variant: 'debug' [ 5/51] c: src/engines/gnucap.c -> build/debug/src/engines/gnucap.c.1.o [ 6/51] c: src/engines/netlist-helper.c -> build/debug/src/engines/netlist-helper.c.1.o [ 7/51] c: src/engines/ngspice-analysis.c -> build/debug/src/engines/ngspice-analysis.c.1.o [ 8/51] c: src/engines/ngspice.c -> build/debug/src/engines/ngspice.c.1.o ../../src/engines/gnucap.c:87:19: fatal error: debug.h: No such file or directory compilation terminated. ../../src/engines/ngspice.c:43:19: fatal error: debug.h: No such file or directory compilation terminated. ../../src/engines/netlist-helper.c:50:19: fatal error: debug.h: No such file or directory compilation terminated. ../../src/engines/ngspice-analysis.c:66:19: fatal error: debug.h: No such file or directory compilation terminated. Waf: Leaving directory
/home/alain/tmp/oregano-master/build/debug'
Despite I've setup in the preferences to use Ngspice instead of Gnucap, the dialog which comes after I choose View -> Netlist still says "* GNUCAP - NETLIST" in its third line. When clicking the "Save" button below it, the file also says "GNUCAP".
When I choose Tools -> Create netlist, the file says "* SPICE 3 - NETLIST".
Original: marc-lorber/oregano#12
Clamps currently have no labels within the schematic view, there is an ancient branch which says it implements a base for that, but it may be better to just start over again (with some inspiration from that old code).
Usually it is better to not scratch the disk if a gtkbuilder file is needed, rather use GResource to load it all on startup. For details and advantages continue reading - http://developer.gnome.org/gio/2.32/gio-GResource.html
Trying to open a recently created schematic via the menu entry Recently used
fails with unknown file format. The very same file works if opened regularly via File open
Specifically the TODO stuff, but also the generic enduser documentation
Make the sheet grabable to move around (additionally to arrow keys)
Query the env for username and fill the according schematic properties fields.
When trying to do a
oregano file1.oregano file2.oregano file3.oregano
it just crashes due to double free of some cursor foo.
When I tried to do a print preview of a sheet, I get the following error message in the console:
(oregano.bin:4210): Gtk-WARNING **: Error launching preview Failed to execute child process "evince" (No such file or directory)
In order to delete parts more easily, single click should just select the part, but also when double clicked on the icon, not only on the text.
Add a line at the bottom of oregano which suggests next actions, where possible as buttons which executed the advertised next action (buttons should include hotkeys, thus related to #1)
There were a bunch of fixes for the models being used
Currently no doc files get installed.
Zoom level is not adjusted, always zooming to center of sheet (should be mouse center if it is within the sheet)
Refactor the interface so that at least progressbars and the errorpane are not popups, but integrated parts of the userinterface
Current sources just fail simulating.
A common place to discuss things regarding oregano.
Fix waf to properly install language files. Maybe related to #15.
Select a part, rotate it, item gets displaced shown until placed. When placed bug #57 can be observed.
When enabling to always_place_both_wires, the node-store checks (or some other checks) totally screw up wire placement. This is a prerequisite for #8.
Clone in a clean directory
Just do waf spawn_pot
, one gets the following output:
Wrote ../data/mime/oregano-mimetypes.xml.in.h Wrote ../data/oregano.desktop.in.h Wrote ../data/xml/part-browser.ui.h Wrote ../data/xml/export.ui.h Wrote ../data/xml/plot-window.ui.h Wrote ../data/xml/view-netlist.ui.h Wrote ../data/xml/clamp-properties-dialog.ui.h Wrote ../data/xml/splash.ui.h Wrote ../data/xml/part-properties-dialog.ui.h Wrote ../data/xml/settings.ui.h Wrote ../data/xml/print-options.ui.h Wrote ../data/xml/page-properties.ui.h Wrote ../data/xml/textbox-properties-dialog.ui.h Wrote ../data/xml/simulation.ui.h Wrote ../data/xml/properties.ui.h Wrote ../data/xml/oregano-main.ui.h Wrote ../data/xml/log-window.ui.h Wrote ../data/xml/plot-add-function.ui.h Wrote ../data/xml/sim-settings.ui.h Traceback (most recent call last): File "/usr/share/waf/waflib/Scripting.py", line 96, in waf_entry_point run_commands() File "/usr/share/waf/waflib/Scripting.py", line 152, in run_commands ctx=run_command(cmd_name) File "/usr/share/waf/waflib/Scripting.py", line 145, in run_command ctx.execute() File "/usr/share/waf/waflib/Context.py", line 86, in execute self.recurse([os.path.dirname(g_module.root_path)]) File "/usr/share/waf/waflib/Context.py", line 127, in recurse user_function(self) File "/home/alain/Code/oregano-po/wscript", line 167, in spawn_pot ctx.recurse ('po') File "/usr/share/waf/waflib/Context.py", line 127, in recurse user_function(self) File "/home/alain/Code/oregano-po/po/wscript", line 49, in spawn_pot os.system ('xgettext -k_ -kN_ -E -f po/potfiles.in --package-name='+ctx.env.appname+' --package-version '+ctx.env.version+' -o po/'+ctx.env.appname+'.pot') AttributeError: 'Context' object has no attribute 'env'
After clicking View -> Netlist, I get a warning in the console "GtkSourceView-WARNING **: Failed to load '/usr/share/oregano/language-specs/netlist.lang': could not find the RelaxNG schema file"
Doing a "locate language-specs" results in a lot of "/usr/share/gtksourceview-3.0/language-specs/*.lang" lines
If the first window gets closed (i.e. Ctrl+ or via menu or via the window-managers buttons), it will close the whole application. No errors printed.
The simulation settings dialog is distorted
A few GTK_IS_GRID (grid) popup when doing a simulation
Some laptops do not provide scroll-wheel like touchpad events.
Got a suggestion to use -+/- for that as additional hotkeys. See also #13
Add scissors tool to delete a complete wire between two black connection dots, but also allow to delete parts (show a different cursor if hovered)
SheetPos is used in multiple different ways, not only as position, but also as length and not directly Sheet related stuff. Thus a rename to Coords is pending.
Merge overlapping wires where possible, reduces the number of elements having to be handled.
Also a reverse tool is required for #40 , should be trivial to implement.
Add 4 buttons in each direction along the borders (maybe addition 4 in each edge). Each of them can be pressed (or maybe hover if someone has a specific tool, like wire-create) in order to extend the sheet in that direction.
When saving, a specific position of the schematic may be selected.
Feedback on that idea welcome.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.