Warning, /sdk/ktechlab/TODO is written in an unsupported language. File is not indexed.

0001 Modifications needed for getting rid of Qt3Support dependency
0002 =======
0003 
0004 
0005 TODO items before the next release
0006 =======
0007 
0008 
0009 Features which need re-implementation in Qt5 port
0010 =======
0011 - dbus integration for documents (used to be dcop bindings for documents)
0012 
0013 - TextDocument::clearUndo / clearRedo is not implemented; only used in newly created documents
0014 
0015 
0016 Fixes that could be postponed after the first Qt5 release
0017 =======
0018 - property editor; property editor item
0019     - fix glitch of reset button disappearing when horiznotally resizing the property editor
0020         - in 0.40.0 it is glitching, too, when resizing
0021         - need to fix reset to default button
0022     - if user clicks on the editor, then the reset button appears
0023     - proper solution is to add 2 widgets +layout in the cell, and do not do any custom widget resizing
0024 
0025 - icon for component model widget is not displayed, used to be "locationbar_erase"; to add proper icon
0026 
0027 - in flowcode if the PIC is "minimized", after adding a new item on the canvas, the
0028     "Advanced..." button still appears on the canvas
0029 
0030 - help->ktechlab manual does not work, shows only "documentation not found"
0031     https://bugs.kde.org/show_bug.cgi?id=402158
0032 
0033 - maximum size of collected oscilloscope data should be configurable and should signal the user that the buffer is full
0034     - for now the line "flats out" when it reaches its limit; a Reset makes it collect data again
0035 
0036 - undo / redo interface needs to be properly fixed for text documents: this interface is not exported by KDE4 KTextEditor
0037     http://api.kde.org/4.10-api/kdelibs-apidocs/interfaces/ktexteditor/html/kte_port_to_kde4.html
0038     - a hack is in place which works
0039 
0040 - printing a text document needs fixing
0041     - hack is in place, it works
0042 
0043 - some PICs do not have SDCC support (e.g. Pic18Cxxx). These should not be selectable from the GUI
0044 
0045 - minimize the number of bundled 3rd party icons; most should be usable from Oxygen icon theme
0046 
0047 - loading C code to PIC fails
0048     - apparently when using a project, the PIC gets recognized and uploading works; looks like a feature
0049 
0050 - components have no description
0051    - the context help exists; or something else is needed here?
0052    - missing for: VCVS, VCCS, CCVS, CCCS, Push-to-Make, Push-to-Break, NPN, PNP, n-JFET, p-JFET, n-MOSFET, p-MOSFET,
0053         Inductor, Bar Graph Display
0054 
0055 - created subcircuits appear twice in the subcircuit list; investigation needed
0056 - created subcircuits in some cases they cause crashes; investigation needed
0057 
0058 - Translations: not all strings are available in gettext ( https://bugs.kde.org/show_bug.cgi?id=375726 )
0059 
0060 - Oscilloscope view sometimes does not scale the signals correctly ( https://bugs.kde.org/show_bug.cgi?id=371625 )
0061 
0062 - Op-amp with positive feedback behaves as amplifier; should behave as comparator ( https://bugs.kde.org/show_bug.cgi?id=371622 )
0063 
0064 
0065 
0066 
0067 
0068 Modifications needed for KF5 port
0069 =======
0070 
0071 
0072 
0073 Old TODO entries, to be reviewed
0074 =======
0075 
0076 See http://wiki.ktechlab.org/ - not entirely ready yet, but I plan on moving (at least some of) the stuff in this TODO file to this wiki. This allows for better categorization, discussion, etc of ideas than a plain-text file in subversion that only a few people have write access to.
0077 
0078 0.4 targets:
0079 * Replace QCanvas with own optimized implementation.
0080 * Only use IDs for items, etc, in ItemDocumentData - otherwise they lead to too many bugs.
0081 * More intelligent connector routing.
0082 * Variable time step in Simulation.
0083 * Fix subcircuits so that they are saved in an itemdocument.
0084 
0085 
0086 Bugs:
0087 * At the moment, KTechlab auto-detects a point in the circuit to use as ground, according to a set of priorities (e.g. the Ground component has the highest priority, then voltage elements, etc etc). However, some circuits do not have any point which should be considered ground, e.g. "(+9V)-------(Battery)". Suggested solution: detect a point to have as a fixed voltage, that can be anything including 0V.
0088 * Microbe should give "noline" where applicable in show-source (such as in delay routines).
0089 
0090 Features:
0091 * Bookmarks in the oscilloscope.
0092 * Work area text: allow clickable URIs, rich text editor.
0093 
0094 General TODO:
0095 * optimize microbe some more?
0096 
0097 Polishing:
0098 * Informational message when user attempts to paste flowcode into a circuit (can't do so; must save and load into pic).
0099 * On program startup, use "text blobs" pointing to sidebars to explain what they do.
0100 * Update register info even when PIC is paused.
0101 * replace "refresh rate" slider in settings dialog with standard one.
0102 
0103 
0104 [Being worked on or soon to be worked on]
0105 
0106 david:
0107 
0108 electronerd:
0109 * refactor the oscilloscope for better code reuse and so I can add a view that looks more like an oscilloscope's screen instead of a printed tape
0110 
0111 
0112 william:
0113 * In progress:
0114 
0115 - variable capacitor/trimmer - Done.
0116 - variable resistor - Done.
0117 - Voltage Regulator - On Hold.
0118 - bar graph display - Done.
0119 
0120 * Future Ideas: (leave me a note if anyone wants to do any of these so I know and can remove them)
0121 
0122 - crystal oscillator
0123 - 16 seg display
0124 - bridge rectifier
0125 - opto isolator 
0126 - Scmidt NAND
0127 - Schmidt Inverter
0128 - Thyristor
0129 - Zener Diode
0130 - Logic analyser (16 bit) and graph output
0131 - Variable Inductor
0132 - Solenoid ( requires animation )
0133 - Bar Graph Display Driver
0134 =======
0135 
0136 The following have been brainstormed with reference to other electronics software I have used. I have found these features useful and these are all wishes for the future that may or may not be relevant to the direction the software takes in the future. I will obviously consult before attempting any of them:
0137 
0138 - Model poperty framework for components to include things like wattage, frequency, resistance, etc... of components using specs of manufactured components, with the future goal of accurate simulation of component destruction. This will also allow a parts list to be created when a circuit is completed. Just an idea, up for discussion. 
0139 - Allow labeling of components in circuit, eg. R1, R2, C1, C2 etc.. Maybe a caption facility.
0140 - Right click properties for component model, values with separate value and multiplier selection to make it easier. This could be implemented in the Item editor too.
0141 -Circuit drawing on a black background to better visualise animated wires and logic levels through wires. Different view options: voltage levels, current flow, logic levels, normal(no wire animation of any sort). 
0142 - A means for users to create a circuit which is intended for use in a component, and to link the created circuit to a generic component that automatically creates the required in/out pins with reference to the created component circuit. On top of this, a means for users to submit new components they have created this way to allow the library of components to be built. So instead of a long list of IC's one generic one may be used with a library containing the circuits needed to simulate different types which can be chosen for example through the Item Editor.
0143 
0144 
0145 
0146 
0147 
0148 
0149