GSpeakers ChangeLog

2004-06-22

* GSpeakers-0.11
	
* crossoverhistory.h/cc: use FileChooser
	
* boxhistory.h/cc: use the FileChooser
	
* gspeakersfilechooser.h/cc: Implemented GSpeakersFileChooserDialog

* speakereditor.h/cc: converted to GSpeakersFileChooser
	
2004-06-21

* gspeakersfilechooser.h/cc: added files
	
* mainwindow.cc: made gnucap default SPICE interpreter
	
* speakereditor.cc: use gnucap if specified
	 
* filterlinkframe.cc: use gnucap if specified
	
* net.h/cc: added use_gnucap property to Net::to_spice
	
* mainwindow.cc, speakereditor.cc: added gnucap config option
	
2004-06-19

* filterlinkframe.cc, speakereditor.cc: added ngspice 

2004-06-19

* mainwindow.cc, settingsdialog.h/cc: added use ngspice checkbox
	
2004-05-10

* speakereditor.h/cc: started to use the FileChooserDialog

* Ported to gtkmm-2.4 and libsigc++-2.0

2003-09-08

* mainwindow.cc: in previous versions of gtkmm there seem to have been a 
    bug causing Notebook::insert_page to append pages on the wrong end of 
    the notebook, GSpeakers was modified to use this function properly.
	
* crossoverimageview.cc: fixed a bug that caused GSpeakers to display a 
    wrong schematic in some cases
	
* crossoverpaned.cc: typo highpass->lowpass


2003-03-11

* Gspeakers-0.10.1 was released
	

2003-03-11 

* gspeakersplot.cc: changed 1000->1k on plot x-axis

* mainwindow.h/cc: implemented "Save all open files"


2003-03-05

* speakereditor.cc: cleaned up freq resp browse button hbox

* mainwindow.cc/h: added "save all open files" menuitem

* speakereditor.h/cc, boxhistory.h/cc, crossoverhistory.h/cc: added 
    signalhandlers for signal_save_open_files

* mainwindow.h/cc: implemented "save changes" dialog if there is unsaved 
    changes

* common.h/cc: added signal_save_open_files


2003-02-27

* speakereditor.cc, enclosurepaned.cc, crossoverpaned.cc: set modified in 
    corresponding functions

* common.h/common.cc: added *modified accessor functions so that i can mark 
    a *list for "ask if you want to save"


2003-02-20

* mainwindow.h/cc: added on_delete_event


2003-02-18

* The changes 02-17 and 02-18 fix seg-faults that occur if the file names 
    in the config-file do not exist or is invalid

* crossoverhistory.cc: only select first crossover if we have got a 
    crossover list with more than zero elements

* filterlinkframe.cc, summedfreqrespplot.cc, crossoverimageview.cc: check if 
    speakerlist ptr equals NULL

* crossoverwizard.cc: init speakerlist member ptr to NULL

* speakereditor.cc: init speakerlist even if xml not found


2003-02-17

* boxeditor.cc, boxhistory.cc: fixed so that GSpeakers can start with a 
    faulty boxlist-config option without segfaults

* speakereditor.cc, crossoverhistory.cc, boxhistory.cc: added try/catch around 
    loading files in contructors, this prevents gspeakers from segfaulting if 
    you try to start gspeakers with an invalid xml file in the config


2003-02-15

* filterlinkframe.cc, speakereditor.cc: check so that we have a valid output 
    file before reading spice output

* Vaious files: use GSpeakers::round everywhere

* main.cc: added #include <locale.h> which might fix compilation errors on 
    some systems


2003-02-12

* Prepared for 0.10 release, just waiting for a more detailed bugreport from 
    a user


2003-02-11

* Various files: removed <b>-tags from gettext strings

* freqrespeditor.h/cc: cleaned up from unused headers, adjusted the dialog to 
    follow more of the Gnome HIG

* settingsdialog.h/cc: cleaned up the files from unused headers, adjusted the 
    settingsdialog ui to follow the gnome HIG a little bit better, implemended 
    "instant apply" and removed the apply-button

* enclosurepaned.cc: removed append toolbar button since you don't want to 
    do this, you probably want to click new instead

* boxeditor.cc: fixed on_activate functionality in vb1 entry

* boxhistory.cc: select appended box in boxhistory, this fixed a segfault 
    caused by an invalid pointer


2003-02-10

* speakereditor.cc, crossoverpaned.cc, enclosurepaned.cc: removed some toolbar 
    buttons, changed some toolbar labels, made corresponding changes to the 
    menus, thanks to Daniel Elstner for the discussion we had on this topic,
    also some menus were reordered

* enclosurepaned.cc: added a toolbar button


2003-02-06

* filterlinkfram.h/cc: Gnome HIG adjustments, reordered some widgets


2003-02-03

* common.h/cc: added global tooltips accessor function, now we just have to add 
    tooltips where we need it


2003-02-02

* crossoverwizard.h/cc: Gnome HIG

* crossovertreeview.h/cc: Gnome HIG adjustments

* crossoverhistory.h/cc: Gnome HIG adjustments

* common.h/cc: added short_filename utillity function, this functions is used 
    to short a given filename to a <=40 chracter string

* driverfreqrespplot.h/cc: adjusted to follow Gnome HIG, removed unused headers

* gspeakersboxplot.h/cc: adjusted to follow Gnome HIG, removed header files we 
    don't need

* plothistory.h/cc: adjusted to Gnome HIG, removed unneccessary header file 
    dependencies

* boxeditor.cc, boxhistory.cc: adjusted these parts to fit Gnome HIG


2003-01-29

* boxeditor.cc: set speaker in member box when a new speaker is selected in 
    the combo

* boxhistory.h/cc: only include headers we need, added speaker column to the 
    listview

* crossoverpaned.cc, enclosurepaned.cc: in function set_save_state we should 
    check if m_toolbar and m_menu has been initialized

* box.h/cc: added speaker string member variable, added public methods to read 
    and modified this variable and added it to the xml, sorry to break the xml 
    files but i consider the box editor broken so please look at this in a 
    positive way

* gspeakersobject.h/cc: only include sigc++/object.h instead of entire sigc++


2003-01-26

* Released GSpeakers-0.9


2003-01-25

* More 0.9 preparations

* boxeditor.h/cc: changed speaker parameters display from entries to labels

* speakereditor.cc: changed from 4 to 3 decimals on vsa display

* settingsdialog.h/cc, crossoverimageview.h/cc: config option for parts 
    autoscale


2003-01-24

* Prepared for 0.9 release


2003-01-23

* crossoverimageview.h/cc: draw_highpass done, some small adjustments and 
    a few new methods: draw_imp_corr_net, draw_damp_net and draw_driver, 
    implementation of scaling crossover image view is now done


2003-01-22

* crossoverimageview.h/cc: various small fixes in the component drawing

2003-01-21

* crossoverimageview.h/cc: added lowpassfilter drawing method

2003-01-20

* crossoverimageview.h/cc: midrange, tweeter and resistor done, added corner 
    and t-cross segment

2003-01-18

* crossoverimageview.h/cc: inductor done, added draw_connector (done), woofer 
    (done), midrange and tweeter

2003-01-16

* crossoverimageview.h/cc: added horizontal view of inductor

2003-01-15

* crossoverimageview.h/cc: added a few methods, implemented scalable and 
    rotatable draw_capacitor method

2003-01-14

* crossoverimageview.h/cc: added crossover image view class, a visual view 
    of the crossover network to this project

2003-01-13

The updates today means we now require gtkmm-2.2, however, i think this is much 
better than depending on changing locales inside the program...

* filterlinkframe.cc, summedfreqrespplot.cc: same as the below

* freqrespeditor.cc: changed sscanf:s like below, fixed the same possible 
    memory leak

* speakereditor.cc: added g_ascii_dtostr/strtod on spice stuff, 
    changed sscanf:s to something locale independent and fixed a 
    couple of possible memory leaks (added "delete buffer")

* box.cc: added g_ascii_dtostr/strtod around xml read-write float

* net.cc: added g_ascii_dtostr in spice file generation

* speaker.cc: added g_ascii_dtostr/strtod around xml-read/write floating 
    point values

* mainwindow.cc: added a few translation strings

2003-01-12

* Added gettext support to most of GSpeakers, added a swedish translation

2003-01-07

* Verified that GSpeakers compiles with gtk+-2.2, gtkmm-2.2 and friends

2003-01-04

* Copied the actual file "depcomp" to source dir instead of a symlink, now you 
    don't need automake-1.6 to compile

2003-01-03

* summedfreqrespplot.cc: fixed a bug that caused a seg-fault if a frf not was 
    found

* speakereditor.cc: save a loaded filename on exit and display the correct 
    filename in the frame

2002-12-20

* Released gspeakers-0.8.4

2002-11-20

* gspeakersplot.cc: remove cout in configure_event

2002-11-19

* plothistory.h/cc: set_cell_data_func

* freqrespeditor.cc: tune nof decimals displayed

* speakereditor.cc: tune cell_data_func's and sprintfs	

* gspeakersplot.h/cc: increased BOX_FRAME_SIZE to make room for aa fonts in plots, 
		tuned the text placement a little bit

2002-11-18

* crossovertreeview.h/cc, boxhistory.h/cc, speakereditor.h/cc: 
	  more set_cell_data_func-stuff

2002-11-14

* crossovertreeview.h/cc: added set_cell_data_func

2002-11-12

* boxhistory.h/cc: made formatting numbers in cells work properly

2002-11-11

* cellitemcrossover.h/cc: added members m_value_str and m_type_str

2002-11-05

* common.cc: added GSpeakers::double_to_ustring(double, int, int) which can 
    format the output string as you want it

* boxhistory.h/cc: added formatting callback on the vb1, fb1 and type columns 
     using insert_data_with_func

2002-10-18

* crossovertreeview.cc: use the new cellrendererpopup instead of a plain 
    text renderer

* popupentry.h/cc cellrendererpopup.h/cc: added files which handles enable a 
    cell to have a spinbutton as renderer, not quite done but it works...

2002-10-15

* crossoverwizard.cc: prettier labels on most common filters in crossover wizard 
    panel

* crossovertreeview.cc: add an extra level to the filter treeview so that the 
    user can see which components that are used in lowpass and highpass filters 
    and code cleanup

* crossovertreeview.cc: removed on_unit_cell_edited since we do not let the 
    user edit this cell

* common.h/cc, crossovertreeview.cc: removed unused signal_part_modifed

* filterlinkframe.cc: fixed a bug that saved bessel instead of butterworth in 
    2nd order filters

2002-10-14

* Prepared for 0.8.3 bugfix release

* main.cc/mainwindow.cc: fixed a segfault which appeared upon first startup 
    since the toolbars wanted a config option not present at the time

* crossoverwizard.cc: work around bug (or something?) in gtkmm-1.3.24 which 
    cause a dtor not to be called when using erase on vbox.children()

2002-10-12

* speakereditor.cc: redraw freq plot on browse too, ungrey toolbar and menu save 
    after you had changed the freq resp file

2002-10-11

* Oops, forgot to update version number

2002-10-10

* Prepared for 0.8.2 release

* speakereditor.cc: draw frequency response plot when freq resp editor is closed

* speakereditor.cc: fixed a bug which caused a segfault when you enter a new 
    rdc, obvously we had hardcoded the index of the impedance plot

* filterlinkframe.h/cc: fixed the infinite loop bug when co freq was changed, 
    this was probably introduced in the bugfix release last week

2002-10-03

* Prepared for 0.8.1 bugfix release

* Fixed a couple of minor bugs, reconnected callback to two buttons in the 
    speaker editor, added some win32 #ifdef stuff

2002-10-02

* crossoverhistory.cc: check for "AutoUpdateFilterPlots" config before drawing 
    plot when a new crossover is selected

* added try/catch around Settings::save

* settings.cc: added remove before rename when compiling on windows

* Removed intl stuff from configure.in, added --enable-win32 configure time option

* filterlinkframe.cc: fixed nonexistent backwards calculation of cutoff
    frequencies

2002-10-01

* mainwindow.cc: use Gtk::PACK_SHRINK when packing the toolbars

2002-09-30

* summedfreqrespplot.h/cc: added new class which displayes the estimated 
    frequency response of the loudspeaker

* common.h/cc and filterplot classes: added Net* parameter to 
    signal_add_filter_plot

* settingsdialog.h/cc, mainwindow.cc: remove "use advanced driver model" 
    config option, reorder options on new pages

* filterlinkframe.h/cc: handle the new net class members

* net.h/cc: added new members, "use advanced driver impedance model" and 
    "invert driver polarity"

* Prepared for 0.8 release

2002-09-27

* gspeakersplot.h/cc: added set_y_label method, also use this in plot container 
    classes

* boxeditor.h/cc: removed the buttons, use enter in fb entry or toolbar or menu

* enclosurepaned.cc: added toolbar and menu items for the buttons in boxeditor

* speakereditor.cc: signal speakerlist_loaded on new speaker

* boxeditor.cc, filterlinkframe.cc: add new speakers to combo-boxes

2002-09-25

* All classes that uses SpeakerList: Prepared for better handling of new 
    SpeakerList loaded signal

* mainwindow.cc, settingsdialog.h/cc: config options: save size, save position

2002-09-24

* speakereditor.h/cc, settingdialog.h/cc: config option "draw driver imp plot"

* speakereditor.h/cc: redraw imp plot if a relevant parameter has been changed

* driverfreqrespplot.h/cc: added replace_plot

2002-09-23

* speakereditor.h/cc: code cleanup

* Prepared for GSpeakers-0.7 release

* mainwindow.h/cc, crossoverhistory.h/cc, boxhistory.h/cc: move toolbars and 
    menus to *paned-classes

* crossoverpaned.h/cc: added class

* enclosurepaned.h/cc: added container class for enclosure editors, history, ...
    toolbar and menu now exists in this class

2002-09-22

* settingsdialog.h/cc: made the settings dialog look a little bit nicer

* crossoverhistory.h/cc: added menu and toolbar, added new icons as usual

* net.cc: fixed some issues with ++-operator, this operator seems to change 
    with -O level used by the compiler...?

* boxhistory.h/cc, mainwindow.cc: added enclosure menu and toolbar, added some 
    new icons

2002-09-21

* settingsdialog.h/cc: new config option: toolbar style

* mainwindow.h/cc: added driver toolbar

* speakereditor.h/cc: added toolbar, added icons to menu, a couple of new icons

2002-09-19

* settingsdialog.h/cc: removed evil "gtk-critical", changed from Gtk::Entry -> 
    Gtk::Entry*

2002-09-18

* mainwindow.cc: added driverfreqplot to main window

* speakereditor.cc/h: added handling of the driverfreqplot class

* driverfreqrespplot.h/cc: added wrapper class for gspeakersplot which displays 
    the frequency resp of a driver

* gspeakersplot.cc: now we actually use m_lower_y and m_upper_y ctor args

2002-09-17

* speakereditor.cc: use freq resp editor

* freqrespeditor.h/cc: added freq resp editor class, this class can now handle 
    30 dbmag values

2002-09-16

* mainwindow.cc: UI updates, removed speakerlistselector from the application

2002-09-15

* mainwindow.cc: added some pixmaps to notebook tabs and added icon for the 
    main window, makes the app look a little bit nicer

2002-09-14

* Prepared for GSpeakers-0.6 release

* mainwindow.cc: added icons to the tabs on the main notebook

* tabwidget.h/cc: new class

* Added #ifdef OUTPUT_DEBUG around all cout statements

* totalfilterplot.cc: fixed a bug that sometimes caused two plots to be drawn 
    in this graph

* gspeakersplot.h/cc: added visible member variable which knows if the widget is 
    visible or not, this way we don't draw to the window unless it's visible

* verfied that we compile on gcc-2.95, 2.96 and 3.2

2002-09-13

* crossoverwizard.cc, : fixes for gcc-3.2

2002-09-12

* totalfilterplot.cc: added plot of total filter response, except for the 
    configure event that does not get called until the widget is shown

* configure.in, config.h.in: added --enable-no-output-debug option to be able 
    to disable console debug output

2002-09-11

* mainwindow.h/cc: added totalfilterplot to main window

* totalfilterplot.h/cc: added new class to handle plots of total filter 
    frequency response

* net.cc: now generates advanced speaker model too, fixed a bug: of course 
    the resistance in zobel network should have the resistor value...not 
    the capacitor value...

2002-09-10

* settingsdialog.h/cc, mainwindow.cc: added config option 
    use_advanced_speaker_model

* speakereditor.h/cc: now we handle the new member variables in the speaker class

* common.h: removed exception dependency

2002-09-09

* speaker.h/cc: added member variabled ad, bl, mmd, rms and cms, for 
    speaker impedance calculations

2002-09-08

* Prepared for GSpeakers-0.5 release

* net.h/cc, filterlinkframe.cc: save selected speaker for each net

2002-09-07

* settingsdialog.h/cc, filterlinkframe.h/cc: added config options for path 
    to spice executable and wheter automaticly update the filter plots

* mainwindow.h/cc, settingsdialog.h/cc: added settingsdialog to the menu

* filterlinkfram.cc: fixed backword calculation of -3dB when a damping network 
    is used

* filterlinkfram.h/cc: set net family (butterworth, bessel, ..) on init (new 
    crossover selected)

2002-09-06

* net.h/cc: added net family type, butterworth, bessel, ... class members for 
    lowpas and highpass network

* filterlinkframe.cc: verified backwords calculations of cutoff freq 

2002-09-05

* net.cc: added spice generation for 2nd, 3rd and 4th order filters

* filterlinkframe.h/cc, gspeakersfilterplot.h/cc: update plot when user change 
    something in the filter

2002-09-03

* filterlinkframe.cc: add SPICE parsing routines

* mainwindow.cc, speakerlistselector.cc, filterlinkframe.cc: ui tweaks, added 
    simple filter plot for 1st order crossover networks

2002-09-02

* common.h/cc: new signals, add_crossover_plot and plot_crossover

* gspeakersfilterplot.h/cc: add two files, handle the gspeakersplot for 
    crossover network frequency plots

* crossoverwizard.h/cc: added two buttons (plot and update) and corresponding 
    callbacks

* mainwindow.h/cc: UI changes

2002-09-01

* net.h/cc: added to_SPICE-function, print spice-file to tempfile for 1st order 
    crossover networks

2002-08-31

* Prepared for GSpeakers-0.4 release

* crossoverhistory.h/cc: added callbacks for signal_net_modified*, ungrey 
    save-button when you change something in a filter

* filterlinkframe.h/cc: impedance correction and damping network calculations

* speakerlist.cc, boxlist.cc, crossoverlist.cc: throw exception if xmlSaveFile 
    fails

* speakereditor.cc, boxhistory.cc, crossoverhistory.cc: catch exception if 
    xmlSaveFile failed, display error message

2002-08-30

* mainwindow.cc, crossoverhistory.h/cc: Added crossovermenu and corresponding 
    new_from_menu-function in crossoverhistory.

* common.h/cc: new signal: new_crossover_from_menu

2002-08-29

* filterlinkframe.cc/h: 3rd and 4th order calcs done

2002-08-28

* filterlinkframe.cc/h: Finished filter-calculations for 1st and 2nd order 
    filters, added backword calculation of first order filters

2002-08-25

* crossoverwizard.h/cc, filterlinkframe.cc.h: added files to source tree

* Released GSpeakers-0.3

2002-08-24

* gspeakersplot.cc, gspeakersboxplot.cc, plothistory.cc, common.h/cc: when 
    you click on a row in plot history we draw the plot with an extra think 
    line in the graph, makes it easier to see which plot that corresponds 
    to a row in the list

* crossovertreeview.h/cc, crossoverhistory.h/cc: Gtk::Window -> Gtk::Frame

* mainwindow.h/cc: Added all frames to new mainwindow, save window size and 
    paned positions to settings, added a menu and about-dialog

2002-08-23

* speakerlistselector.h/cc, gspeakersboxplot.h/cc, boxeditor.h/cc, 
    boxhistory.h/cc, plothistory.h/cc: base class Gtk::Window -> Gtk::Frame

* mainwindow.h/cc: Added main window class

* main.cc: check for config file

* settings.h/cc: Made the settings class remember config file name

* speakerlistselector.cc, boxhistory.cc: write opened file 
    to config file

2002-08-22

* settings.cc/h, sstream_fix.h: Merged the excellent Settings-class from ickle 
    into my source tree, thanks to Barnaby Gray, ickle maintainer. 

2002-08-21

* Prepared for GSpeakers-0.2 release

* Disable close button on all windows but speakerlistselector.

* boxhistory.cc, speakerlistselector.cc, boxhistory.cc: Load xml from path 
    GSPEAKERS_PREFIX/share/xml, GSPEAKERS_PREFIX is specified in config.h

2002-08-20

* plothistory.cc, gspeakersboxplot.cc, gspeakersplot.cc: Implemented remove_plot 
    and hide_plot so that you can toggle the visibility of a plot in plothistory

* common.cc/h: Added signal_box_plot_remove, signal_box_plot_hide

* Imported source tree to cvs
