0.3.0 RC2 - Fix initial text box size RC1 BETA48 - Improve version check in Setup (shouldn't complain about gtk 2.8) - Make sure "timed" events don't cover keyframe markers - Make the keyframe markers a bit brighter - Added button to add both lead-in and lead-out times - Enter key now works inside the "Start", "End", "Duration" fields BETA47 - Increased upper limit for margins to to 9999 - Fixed bug where joining two 0 time lines would cause the new time to become negative - Compile/bug fixes for 64bit platforms BETA46 - Fixed "timed region" not being deleted sometimes when events are removed BETA45 - Fixed some minor drawing discrepancies in waveform drawing code - Reduced corners by 2 pixels - Fix crash when using "Play Selected" with no audio loaded - Updated libsndfile to 1.0.12 (Fixes "fmt chunk too large" error that occured when opening certain WAV files) - Using scroll keys should not move displayed wave out of range - When non-Unicode characters are detected in a line, try to figure out where these characters are BETA44 - When sabbu is started, make sure the "Default" style is selected in the style editor - Fix crash when using Text Export multiple times (May also fix other crashes) - Don't keep file locked when opening a script fails - Reload style list when Style Manager is closed - Fix freeze on certain lines containing curly braces when syntax highlighting is off - Add tooltips to margin / font properties in style editor BETA43 - Fix hang when closing "Customize Colors" dialog - Fixed a crash when using older GTK versions - Refuse to run if GTK is older than 2.6.8 BETA42 - Pressing enter in the text editor in "Customize Colors" shouldn't do bad things - Pressing Add Leadin/Leadout returns focus to wave - Use proper value for PlayResX/PlayResY values if none is set (preview should now look the same as in VobSub if PlayResX/PlayResY are not set) - Timed events are shown on the waveform - Spellchecking - Event text inside the list is editable by default - Return focus to wave when closing dialogs BETA41 - Fixed "Outline" color being discarded when loading ASS scripts - Fixed IME problem (unix) - Fixed crash when deleting/renaming a style that is in use by the current line - Fixed a bug that caused a line's style to be modified when creating a new style BETA40 - Added "Save selection as WAV" option - Added "Find Next" menu item - Changed automatic event list scroll behaviour (The list is automatically scrolled only when the selection is automatically advanced near the top/botton of the list) - Don't skip comment lines when advancing if the selected line is a comment (Grab Times, Play Next/Prev Row) - Hide "Name" combo in SRT/Karaoke modes - Disable "Karaoke" menu in SRT mode - Hide "Karaoke" and "Syntax Highlighting" buttons in SRT mode - Disable "Add Separator Below" and "Add Separator Above" in in SRT/karaoke mode - Don't show "Underline" and "Strikethrough" options in the font selection dialog for SSA scripts BETA39 - Some internal changes in the "Save" code (oh oh...) - Improved Text Exporter BETA38 - Fix "double toolbar/double scrollbar" bug when "advanced waveform interface" mode is enabled - Fixed toolbar/scrollbar being shown on empty waveform when changing options BETA37 - Tab/Shift+Tab changes focus between start time text box, end time and text editor - Fix event list color bug - More UI changes - Add ability to add "Separators" (stored as blank lines in the script) - Ability to set name to "" - Fixed a bug that caused style/names to be changed when multiple events were selected - Buttons to add "Lead-in" and "Lead-out" (amount customizable in options) - Buttons to Hide/Show waveforms in Simple mode - Option to hide all but the first channel when opening audio files - Show an error if the user chooses a menu shortcut that interferes with a toplevel menu accelerator - Changed "wimp" theme warning to a warning that is shown once on all systems - Added Outdated GTK version warning - Updated README file BETA36 - Fixed missing colors from status bar - Adjusted scroll amounts when using scrollbar / shortcuts - Added automatic scrolling when using the "Play from Start Marker" command - Save "Time Modified" value in workspace - Fix select line's text not being loaded on workspace load - Added "Simple Waveform Interface" mode (on by default) BETA35 - Properly update column list when switching between UI modes - Fix crash when opening script before audio - Added "Status Bar" and "Syntax Highlighting" to "Customize Colors" dialog - Added "Event List", "Status Bar", "Text Editor" preview widets to customize colors dialog - Added "Reset Section" button to Customize Colors dialog BETA34 - Properly update minimum zoom values when waves are resized - Fixed a hang when cloning a view caused the text editor to become too small - Using "Play from Start marker" while "Play Selection" is in progress doesn't mess things up anymore BETA33 - Redesign how multiple waveforms are handled internally - Other internal code cleanups - Fix play cursor problem on non-Windows platforms - Disable "smooth play cursor" for now BETA32 - Make the play cursor smoother (Windows only) BETA31 - Fix crash with older version of GTK - Changing the "Name" field inside the list updates the name combo as well - Renamed the "Pane Position" preference names to avoid weird text editor size when upgrading from 0.2.5 BETA30 - Further improve performance of the waveform - Fix not being able to drag "scrub bar" when it's less than 10 pixels wide BETA29 - Fixed title not being updated when saving workspace - Added "Save Workspace" as feature - Fixed "Close Workspace" function opening "Save Dialog" when no workspace is open - Some code cleanups - Fixed crash with older GTK versions - Text Export is now slightly more customizable (now available from Script->Export) - Added "Adobe Encore" export option (available from Script->Export) BETA28 - Fixed name/style being changed erroneously BETA27 - Changed the < << >> > buttons on video tab to use images as well - Changed the "S" button into a button with am image of a lock BETA26 - Added "extensions" to the scrub bar that are displayed when the scrub bar is very small - Made the < << >> > arrows a bit less ugly - Tweaked the UI a bit more (are people gonna hate me for this one?) - Renamed "Tools" menu to "Customize" - Added "Name" combo box BETA25 - Fixed time bar drawing on scroll BETA24 - Tinker with waveform performance - Fix focus problem with < << >> > buttons (redux) BETA23 - Enable AutoSave for untitled scripts - Fix focus problem with < << >> > buttons BETA22 - Fixed more memory leaks - "Save As UTF16" is disabled for UTF16 files - Fixed "Close" being disabled when it should not have been - Workspace now remembers position in list BETA21 - Fixed some memory leaks - Made some UI tweaks to Style Editor - Fix Save/Save As/Save As UTF16 menu items not working properly - Fix "time modified" flag being set when saving - Reset "time modified" flag when creating new script BETA20 - Changed the way "hidden parts" (for "Code Hiding") are handled internally - Fixed "modified" status not always being correct - Prevent subtitles from being rendered when video is not the current tab - Fix end marker being set to start marker when a script is closed - Get rid of erronous question dialog when resetting a menu shortcut which doesn't have a default key - Disable fixed window size restriction on the Menu Shortcut Editor - The buttons in the Menu Shortcut Editor should now be properly enabled and disabled BETA19 - Save wndow state on exit too (fixes maximized state saving on non-Windows platforms) - Disable "Customize Menu Shortcuts" window when a question dialog is displayed BETA18 - Changed the way menus are stored and processed internally - Added Menu Shortcut Editor - Fixed F2/F3 working when they shouldn't have - Fixed enabling/disabling/focusing windows when errors dialogs are shown - Red border displayed around start/end times if they have been modified - Only left click causes "<" "<<" ">>" ">" to take action (This also fixes the "damn-marker-is-moving-by-itself" bug) BETA17 - Fix memory corruption when searching with "Icon Mode" enabled BETA16 - Implement a workaround for the GTK "modal window focus" bug (About, Shift Times, Customize Colors, Options, Properties, Splash Screen, Style Manager, Find Dialog, Configure Grid, Set Channel Name, Shortcut Help, Split Word, New Style, Rename Style, Error List, Error, Warning) - Fix a bug where closing the Shift Window via the X button would shift times - Make the default text editor size a bit more reasonable - Make the "Thanks To" text box not editable - Set a limit on the resizing of the text editor - Minimize the waveform size on startup (when no waves are yet open) - Treat Japanese comma as a regular comma in the text importer - Draw a real separator to indicate blank lines in the original script (Instead of a colored blank line) - Disable Find dialog when another dialog is open - If you modify the text of the current line and use search, the current line's text will be saved before moving on to the matched line - Center Find dialog on main window - Disable the main window before showing the "wimp" warning BETA15 - Some internal changes in the highlighting code - Find Dialog BETA14 - If the default script type is "SSA", properly switch interface on startup - Limit the times at which F2 is effective (it was pressable at times it shouldn't have been) - Fix crash on startup when using custom colors BETA13 - Fixed a bug that might have caused the wrong start/end marker values to be saved in workspace (in karaoke mode) - If more than one event is selected when the "Shift Times" dialog is opened, "Selected Rows" option is automatically selected - Don't allow markers to be dragged beyond 0 - Various karaoke fixes - Changed the way silence is handled - Pressing "Stop Playing" after using "Play from Start Marker" moves selection to play marker (Same as pressing "Play from Start Marker" again) - Negative floating point values are no longer saved incorrectly in SSA/ASS scripts - Karaoke parts can now be selected on the wave via middle-click - Using "Play from Start Marker" no longer ignores the "advance time" setting when jumping - Change the units in which the "Default Zoom" and "Time Advance" settings are stored (Also renamed the setting names to avoid conflicts which means "Default Zoom" and "Time Advance" settings must be set again) - Fixed rare and minor marker drawing problem - SSA/ASS interfaces are now split (it will change depending on the type of script open) - The differences between SSA and ASS colors are properly handled - Slightly adjusted the Border UI in the style editor - Only show Start and End markers for the selected karaoke part (Overlapping markers are hidden) - Option to set default script type - Option to save in UTF16 by default - Option to enable text editing directly within the event list (off by default) BETA12 - Make "scale" spinner update in real-time BETA11 - Fixed bug that caused the "unsaved changes" message to appear erroneously - Made "scale" updating more smoother BETA10 - Changed Load Script / Fill Event List code to update progress based on a timer not based on progress (this should speed up loading scripts just a bit) - Added checks to prevent the modified flag from being set when things didn't change BETA9 - Used Shift Times Dialog options are now remembered during the session - Used Shift Times Dialog options are now saved in the workspace - In the options window, show a message in the options area if the user selects a "parent" node instead of a child node in the category list - kryPrefManager class now adds spaces between sections when saving (this affects preference file and workspace files) - Added ability to set default section in a kryPrefManager class Less typing -> less chance of typos - Fixed saving color settings - Option to disable dragging markers BETA8 - Changed 120 fps to 119.880 fps in shift dialog - Fixed a bug in Shift Times window when entering time/frame number that caused the entered number to change slightly - Fixed shift-by-frame related crash in Shift Times dialog (only affected people using GTK 2.6.7 and older) - Made the "Ok"/"Cancel" same size in Shift Times dialog - Added padding around "Ok" and "Cancel buttons in Shift Times dialog - Prevent extra zeroes from being appended to FPS in Shift Times dialog BETA7 - Removed code that might have caused a tiny pause when selecting rows (This was really noticable when deleting multiple rows) - Pane ("splitter") positions are now global settings instead of workspace settings so you don't need to adjust the pane positions every time you open a new audio file - Added "Shift by Frame Number" - Fixed bug where extra blank lines were added when exiting line karaoke mode - Customize colors is now a separate dialog accessible from Tools->Customize Colors - Redesigned the Options interface (it is now a separate dialog accessible from Tool->Options) BETA6 - Use sample sampling interval for all wave files - Enable main window when the property window is closed via the X button - Add option to use Peak Files (significantly speeds up opening same audio file multiple times) - Clicking on another line when box karaoke mode is enabled properly changes the start/end times - Splitting karaoke parts no longer adds a space - When leaving "line karaoke mode" restore the regular UI - Pressing "Save Changes" in karaoke mode adjusts the event times if necessary - Script/Close Video/Close are now disabled if no Script/Video are loaded - Various karaoke tweaks BETA5 - Fix crash when Collisions are enabled - Turn property page into a tree - Name column in property tree is now right aligned - Moved property tab into its own window - If you edit a property, but don't change the value the script is no longer marker modified - When saving ASS scripts, use -1 as true value for boolean columns - Splash screen is now only shown 3 times per release version (Beta testers will no longer see a splash screen with every beta) BETA4 - Fixed crash when font selection dialog is shown - Fixed "time advance" setting not being loaded properly - Center font dialog on window BETA3 - Fixed huge memory leak in subtitle preview - Menu option to close workspace - When using Open Recent in Video/Workspace menu, show an error if the file could not be opened - Show a status message if the video file was successfully opened - Added a status message when workspace is saved BETA2 - Waveforms now handle updating zoom on resize (This should eliminate visible zoom changes on wave load) - Importing a TXT file and saving now fills in the filename for you - When using Save As, the previous filename is filled in - Changed the Color Customization UI - Added ellipsis to status text that indicates ongoing actions - When opening audio, the progress bar will be updated more often for larger files - Convert filenames passed on the command line to UTF8 (Fixes opening scripts by association/command line when the paths contain non-ASCII characters) - Convert filenames to system locale when passing filenames to other libraries (Fixes opening audio/video files in paths containing non-ASCII characters) - Use Unicode font enum function (meaning all fonts should now be in the font selection dialog) - Don't hide @ fonts in font selection dialog - Don't create autosave if script hasn't changed - Fixed inaccuracy when dragging srcrub bar BETA1 - First implementation of Karaoke modes - Changed "N" "H" "I" radio buttons into buttons with images 0.2.5 BETA68 - Fix syntax highlighting problem with multibyte characters - Fixed bug in UTF16 read code BETA67 - Fix writing decimal numbers on locales that don't use "." (yet again!!!!) - Use file filters under non-Windows platforms as well BETA66 - Adding more missed strings - Use Unicode Open/Save dialogs on Windows (Which means paths containing non-English characters will no longer confuse sabbu) (Those files will also be properly displayed in the recent files lists) BETA65 - Re-added the "save maximized state" code that was accidentally removed BETA64 - Add more missing translatable strings BETA63 - Add missing translatable string - Fix keyboard accelerators for the menus in the Portuguese translation BETA62 - Added a one-time warning if the "wimp" theme is enabled on Windows - Include Portuguese translation - Enable language file support BETA61 - Fix broken icon in "Style Manager" BETA60 - Fixed zoom problem - Added a check to make sure that there is no crash even if for some reason data beyond the end of the wave is displayed - Fixed clones in workspace - Fixed sync zoom for clones BETA59 - Fixed crash when using "Split on cursor" - Fixed jumpy play cursor when using ALSA output code - Fixed "Error" subitems in the Event->Type menu - Fixed crash on using "Clone View" under certain conditions BETA58 - Fixed crash if the top slider was moved on the waveform in color options BETA57 - Fix buffer overflow when opening certain audio files - Fixed a bug where the last second of an audio was not being shown for some files BETA56 - Save/restore window state BETA55 - Prevent extra data from being drawn after the end of the wave data BETA54 - Remember window size and position - Fix minor drawing bug BETA53 - Fix crash when using "Play Previous Row" BETA52 - Create mutexes on program startup (eliminates some possible threading problems) - Going in reverse should skip "separator" lines as well BETA51 - Fixed crash introduced in BETA50 - When autoselecting the next line after using "Grab Times", skip comment lines - Don't allow assigning times/text to "separator lines" - Disable GTK's automatic search feature BETA50 - If sound is playing when "Grab Times" is invoked, stop playing the sound - Automatic "Time Advance" value is now customizable - F2 now saves the file as well - Added option to make Play Selection stop playing sound if it's already playing - Addressed some more possible focus issues BETA49 - When pressing "Play Row" on a line with start/end times set to 0, don't do anything - Fix minor calculation error in the wave drawing code - Prevent waveform from redrawing twice on zoom BETA48 - Fixed crash when number of columns listed in the "Format" line is less than the number of columns in a style BETA47 - Give possible cause when opening an audio file fails - When grabbing to a blank line, don't lose the selected style - Fix crash when a "Format" line ends with a comma (show warning instead) - Show a warning if a SSA style format has ASS columns and vice-versa - Show a warning if a ASS script contains SSA columns in event format BETA46 - Text Export Feature - Don't save non-Dialog lines in SRT/TXT - When exporting to TXT/SRT strip SSA commands - When converting a SSA file to SRT, remove comment lines from view BETA45 - Renamed "Other" menu to "Sync" - Added "Sync Event to Wave" feature BETA44 - Fixed reading files that don't end in a newline BETA43 - Fixed wave becoming non-resizable when switching between SSA/SRT scripts BETA42 - Fixed marker value not being set properly when a script is opened BETA41 - Cleaned up file reader code - Fixed handling of windows coded files on non-Windows OSes - Added option to register .srt extension with sabbu BETA40 - Support for loading/saving SRT files BETA39 - Fixed Splitting Lines for lines containing multi-byte characters - Fixed Splitting Lines when in Icon mode - Recognize lines as comments even if they have spaces before the semicolon (inside Events section) - Empty lines in the Events section are preserved (and shown in UI) - Preserve comments in Style and Script info sections - Instead of grabbing times, only update text for ';' comment lines displayed in the UI - Present a warning if any unknown sections are detected within the file - Present a warning on any unknown lines in Events/Styles - Don't accept empty files as correct scripts BETA38 - Markers always snap to before the keyframe - When saving as UTF16, switch the open script to the new selection - Fixed possible problems when dealing with non-English text - Fixed Style Rename (was making a copy instead) - Adjusted video seeking function again (is it perfect yet?) BETA37 - Bumped the repeat speed for the arrow buttons BETA36 - Cursor position is now properly preserved when switching between highlighting modes - Fixed slight calculation error when seeking BETA35 - Use "time widget" instead of a bunch of spin buttons on the shift times screen - Basic "icon" mode now works again - When opening audio file, set focus on the waves - When opening a workspace, set focus on the waves - When clicking on any of the items on the wave toolbar, return focus to the wave BETA34 - When seeking in video, go to the first frame after the target time (not the previous frame) BETA33 - Don't ignore line margins when showing subtitle preview - Fix major bug that could affect the visual accuracy of subtitle previews BETA32 - If a file is Unicode, ignore the "Encoding" field of styles - Fixed a rare bug that could have caused errors when opening UTF16 files - When saving a file as UTF16, don't set Encoding field to 0 BETA31 - Display UTF8/UTF16/SSA/ASS flags in title bar - Add "Snap to Keyframe" feature when dragging markers - Fixed background color problem with the "Index" column - Moving the end marker works properly with the OSS driver at all times now - The play marker is now smooth when using the OSS driver - Sound now stops instantly in OSS driver BETA30 - OSS sound output code BETA29 - Removed "play button turns into stop button" feature (was cause of instability) (will investigate) BETA28 - Tweaked "Focus" command so that the wave is scrolled in a way such that more data before the start marker is visible - When a sound is playing, the Play button changes into a Stop button - Removed "Disable Automatic Wave Jumping" option from Options and insted added a "DS" toggle button to the left of the event list that has the same function. Updated the tooltip to be more descriptive. This way this feature can be quickly enabled/disabled during timing BETA27 - Wrote code for creating "time" entry boxes (the times inside the "Start" and "End" boxes can now be edited) - Increased the marker movement speed when holding down the "<< < > >>" buttons - Times can now be changed even if no script is open - If no wave is loaded and "automatic jump" is disabled, still load the times when a user selects a different line - Play Row (Alt+R) can now be used even if no audio is loaded (it will load the selected line's times) - Grab Times now works even if no times have been set (uses a time value of "0" as it should have) - Advance markers (E) now works even if the markers have not been set - Video now shows first frame when the markers have not been set yet (as opposed to showing nothing before) BETA26 - Fixed video position marker not properly being reset when a different subtitle was selected - Fixed window sizing problem when maximizing/restoring window - Fixed a rare crash on workspace loading - Created a new SSA effect parser (better designed than the old hack) - The Code Highlighting Feature now uses the new SSA effect parser - Option to disable Automatic Wave Jumping - Text editor box is now resizable - Text box size is saved in global preferences - Added default zoom option - Fixed "imported script" not being saved in Style Manager - Added "Delete Style" buttons to Style Manager - Fixed Style Manager window losing focus when using "Open Script" command BETA25 - UTF16 encoded scripts are now longer erroneously saved as UTF8 - Fixed more bugs related to the new highlighting code BETA24 - Fixed cursor placement when switching between "highlighting" modes (Selection/cursor positions are now preserved across mode switches) BETA23 - Fixed remaining known issues with highlight mode ("icon" mode now works as well) - Grabbing an already timed line via G/Alt+G shortcut now always advances 2 seconds beyond its end (Enter key loads the next time's lines) BETA22 - Further improvements in highlighting code - Bug fixes in new highlighting code BETA21 - First version of the new highlighing code - Faster - Command colors are now alternate it to make things easier BETA20 - Once again changed the way zoom is shown/entered in the UI (now it represents the number of seconds displayed per page. this should be much easier to handler for the user) - Fixed a major problem that was causing some parts of the waveform not to be drawn accurately (This was introduced in BETA11) BETA19 - Actually fix bugs I thought I fixed in beta 18 and 17... (what the hell is wrong with me?) BETA18 - Fixed maximum zoom not being set properly when waves were resized BETA17 - When a marker is set on the wave for the first time, the associated hightly was not drawn properly - Fixed a bug where multichannel waves would be loaded with wrong initial zoom (and sllightly different zoom between channels) BETA16 - Loading UTF16 encoded scripts now works as well BETA15 - Fixed "play cursor" not disappearing at the end of the wave BETA14 - Fixed wave data being read slightly beyond the end - Actually fix the scroll wheel issue (doh) BETA13 - UTF16 export feature - If karaoke mode is on, but then the audio file is closed, don't erroniously prevent the user from turing off karaoke mode - Prevent the wave from being scrolled beyond the end using the scroll wheel BETA12 - Bug fixes for non-integer zooming BETA11 - Fixed a minor error in the way wave hight was calculated when zoomed out (This should not have had any major impact on the accuracy of the displayed data) - First implementation of non-integer zooming BETA10 - Fixed few cases where "text highlighting" code fired more than it should have (minor impact) - Fixed wrapping of text editor (forgot to enable wrapping which i turned off during testing of a previous build) BETA9 - Fixed "text highlighting code" being executed much more often than it should have been BETA8 - Fix bug when saving scripts containing non-UTF8 data that was internally converted BETA7 - Fixed Karaoke mode crashes related to not having an audio wave loaded - Don't allow Karaoke mode to be enabled if no audio is loaded - Fixed bug where non-UTF8 conversion was not working on public builds BETA6 - Fixed waveform height being made extra big for multi-channel waves BETA5 - Fixed the "Paste Below" command (it was pasting above) - Don't incorrectly mark the script modified when using "Copy" - Try to automatically convert non-UTF8 non-ASCII text to UTF8 internally (it is convert back to the proper charset on save) - Fix bug where the UTF8 BOM was being written even on non-UTF8 files BETA4 - Minor improvement for txt parser (if line starts with :, assume same character as previous line) - Reverse the direction the wave scrolls when the mouse wheel is used (now scrolls same direction as scroll bar) - Removed old "progress" code (which was obsoleted by the new "status" code) - Fixed "highlighting" feature to work with multi-byte characters - Updated preference code to use the text file reader (which does not use fixed lines) (This fixes a crash if a script containing really long lines is passed on the command line to sabbu) - Properly parse hex colors that end with an ampersand (and hex colors that include alpha values) BETA3 - Fixed major crash introduced in BETA2 BETA2 - Slightly improved text importer (if a line is indented and the line above has a name, sabbu uses the name of the line above) - Commented lines (using ';') inside a script file are now preserved and displayed in sabbu - Unbreak karaoke mode a little bit (still broken) - Pressing S (Play Selection) very quickly after G (Grab Times) no longer causes sound to start playing from old time BETA1 - Re-enabled old (non-working) Karaoke code - Fixed crash when zooming out when a marker is near the beginning of the wave - Fixed UTF checking when importing text files (This will warn when a non-UTF8 (Unicode) file being imported contains non-ASCII characters - When loading/closing audio file don't reset start/end marker back to "undefined" - If the user modifies the start/end markers, selecting another line won't automatically change those times 0.2.0 BETA31 - Fixed crash if doubleclicking on the "Style" combo of a blank line BETA30 - Allow editing of blank lines (get rids of annoying message box and fixes a crash) - Mark script as modified when name or style is edited within the event list - When a line is selected with a different layer from the currently selected line, the script was erroneously marked as modified BETA29 - When joining with an untimed line, don't set the resulting line's start time to 0 BETA28 - Fixed typo in configure.ac that broke out-of-box compilation on OS X - Updated CoreAudio (OS X) audio code (code by Alexander Strange) BETA27 - Fix crash if setting markers beyond the end of the wave - When jumping to selection on wave, don't scroll the wave beyond the end of the audio data - Converted the SSA/ASS load code into a C++ object. (A bit more cleaner now) - The Save/Open dialogs under Windows no longer run in their own thread (This fixes the performance problem, but Sabbu's window will not redraw while a save/open dialog is open) - If there are errors while loading the script, a list of errors is shown with corresponding line numbers BETA26 ("Oh Baby I Am So Sorry Honey Babe") - Fix keyframe display - Fix keyframe saving - Option to disable drag selection on wave (which enables moving the respective markers by holding the mouse button down) - Sabbu version is now written into any saved scripts BETA25 - Cleaned up the utility code - Checked memory allocation by the utility code (fixed one very minor leak) - Fixed crash when errors are thrown - Cleaned up header file inclusion - Add a drag threshold so that the user doesn't change the markers accidentally - Redraw waveform when keyframes are marked BETA24 - Fixed wave centering when time bar is disabled - Improved wave redrawing when scrolling - Fixed linux version - Made linux version work properly with newer ffmpeg - Fixed a bad bug in the underyling list data type (i am surprised it didn't show up earlier) (This makes sabbu work when compiled with gcc 2.95) - Fixed a crash when a script cannot be saved properly - Fixed improper keyframe display - Fixed spin buttons with 0 values being set to a slightly different value. - Platform specific path separator (This caused the default type to reset to ASS and for -0.00 display) - If Actor column is present, treat it as the Name column - Shadow/Outline color display were swapped around - When converting to SSA from ASS, actually make sure the file is converted - Make sure to close input files when they are no longer needed BETA23 - When an area of a wave needs to be redrawn (because it was covered by other window or similiar case) only update the region that was affected. Not the entire displayed part of the wave - Fixed the "move text right" button image - Removed extra redraw when a marker is moved on a wve - When loading workspace, load the pane location before loading the wave(less redrawing) - Optimized wave drawing (should me much faster now) - Wave scrollbar position, marker positions in the workspace take precedence over the times of the selected line - Fixed crash when closing audio - The time display on the wave is now "separate" from the wave - Set markers on mouse-down (not on mouse up) - Allow selecting data in the wave by dragging - Fixed improper scaling of the wave (a lot of the times the bottom half may have had a different scale than the top half) BETA22 - Fix crash when closing sabbu while the splash screen is shown BETA21 - Only try not to hide data behind start/end markers BETA20 - Made the marker/data display slightly less annoying BETA19 - Jump to selection in the wave when user selects a different line - Show index column in list - Don't cover data with the markers (on wave) - Reduced font size used for markers BETA18 - Marker dragging was broken when zoomed in / out - Highlights were broken when zoomed in / out - Zoom in / Zoom out was not displaying properly - Cleaned up the way positions are handled internally in the waveform (Should make the code much less confusing) - Optimize the way highlights are drawn BETA17 - Don't draw a horizontal green line inside the time selection - Allow user to drag bars to set the time selection - Save wave pane / video pane position inside the workspace BETA16 - Display non-ASCII characters properly on Video Preview BETA15 - When shifting, ignore blank lines when checking if any lines will be shifted beyond 0 - Made the move arrows on the video tab a bit smaller - When shifting, warn if no rows are selected when the selected operation requires a selection - Fix "Properties" tab contents height - When a script is loaded, make sure the first line is automatically selected (Unless it's loaded from a workspace that defines a different selection) - Fix workspace save error when opening more than one workspace during one run - Allow zooming out of the video - Highlight the selected time range - Allow moving of the start/end markers on the sample wave in options BETA14 - Hide contents of options tab when it is not focused (This allows the wave to be made even smaller) BETA13 - Fix dumb bug. A very dumb bug. BETA12 - Hide style editor when not on the video Tab (This allows the wave to be smaller) - Remember the position of the "pane" between the Tabs and the List (You can resize the Video tab and the Audio tab separately) BETA11 - Fixed saving for systems whose active locale does not use "." as the decimal point - Fixed some alignment bugs - Sligh UI tweak (expanded margin text) - Another UI tweak (put alignment frame under margin/transform frame to make the style edtitor look less fat) BETA10 - Show message on indicator when autosave occurs - Cleaned up/organized the code for Audio Tab and non-Tab UI - Converted pref code to C++ - Cleaned up some other code - Fixed name dropdown bug (it showed empty names) - Fixed some small memory leaks - Don't crash if the video dlls are missing. Just show error message and disable video functionality. - Show more detailed errors messages when opening video files - Allow importing/exporting of keyframes - Added recent files list to Workspace, Video and Audio menus - Slightly retweaked the video tab - Move buttons are now on the left instead of around the video area - Scrollbars disappear when no longer necessary BETA9 - Fixed color problem with the new indicator feature - Slightly tweaked the way the new indicator works - New method of changing resize behaviour for the splitter (much more effecient) - Don't show option description when mouse is no longer over an option BETA8 - Trying to fix color problem with the new indicator feature BETA7 - Disabled repacking of wave pane (too inefficient) - Added tooltips to font properties - Allow negative font angle BETA6 - Fixed "subtitle positioning" - Fixed memory leak in Font Selection Dialog - Fixed memory leak in Subtitle Preview code - Fixed memory leak in the Style copy code - Fixed another memory leak in the Font Selection Dialog - Fixed yet another memory leak in the Font Selection Dialog - Fixed a memory leak that occurs when changing a style font - When using "Preview in Video Area" feature of the font selector, properly revert to the original style when the dialog is closed - Fixed autosave crash if no file is open - Changed resize behaviour for the video tab (resizing the window while on the video tab gives space to the video area, while on the other tabs gives space to the list) - Fixed crash if trying to open an invalid script / workspace - Fixed font preview problem on the font selection dialog when using the "preview on video" feature - Display proper colors when switching styles in the style editor - Added indicator of modified/unmodified status - Added indicator when file is saved - Instead of using a separate progress bar window, reuse the same indicator area BETA5 - Changed all remaining GtkCombo controls to GtkComboBox controls - Altered the "Name" column to contain a combo box that allows you to pick character names - Fixed memory leak in SSA/ASS reader - Compiles under linux again (tested with gcc 3.3.5, probably will not work with gcc < 3) - Changed Accelerator for Video menu from "V" to "I" (to avoid conflict with another shortcut) - Cleaning up code - Get rid of script.cpp/script.h (remaining code moved to kryEvent) - Moved some enums into their respective classes - Restructured directories and files - Fixed swapped behaviour on the "Import as text file" dialog (Pressing no imported, and yes did not) - Fixed swapped behaviour on the "Delete style" confirmation dialog - Split the "Opening Script" progress into two separate dialogs - First "Loading Script" - Second "Filling List" - Converted file reader code into a class - Added code to help trace memory allocation problems - Fixed memory leak in file reader (used by SSA/ASS reader) - Fixed off-by-one bug in the file reader code (should not have had any bad effects) - Modified text importer to use file reader (same one used by SSA/ASS reader) - Fix problem when splitting 0 length events - Fixed another memory leak in ASS/SSA reader - Fixed memory leak inside "script" class - Fixed very minor memory leak inside "script" class - Added memory tracking code almost everywhere in the program (to find memory leaks and certain errors) - Now using same "store" for all style combos (the combo styles are all updated from one source) - Style can now be picked directly inside the list - If you have more than one row selected, and edit any rows except the first directly inside the event list, the status display for the current line will no longer be improperly updated - If you change the location of the text editor, the event edit toolbar (time, style, layer, etc) moves there as well - Reduced the update interval on the "Opening Audio" progress bar which should speed up audio loading - Fixed yet another memory leak in the SSA/ASS reader - Fixed some memory leaks in the preference manager - Fixed memory leak when loading workspace - Added "Sync Point" feature (used to sync scripts for episodes that are offset from each other) - Fixed "Jump to Selection" bug where it would not work if either the start or end markers were not set - When shifting lines, warn the user if any lines' times will be set to 0 (because they are being shifted beyond 0) - Fixed more memory leaks... - Fixed a memory leak when copying/cutting events - Cleaned some code relating to event menu actions - Fixed memory leak in "name" tracking code - Fixed memory leak when splitting lines - Fixed memory leak when joining lines - Fixed another memory leak when splitting lines - Splash screen now only shows the first 3 times you start each version - When splitting multiple lines, don't stop on the first non-splittable line - Don't allow joining of blank lines BETA4 - If you grab times and the next line's times are 0, do not change the current start/end times to 0 - When importing text files, don't fill Name column with index numbers when no name is present - Replaced similiar dialog code throughout the application with one function - Replaced some GtkCombo controls with GtkComboBox controls (GtkCombo is marked "deprecated" in the GTK api. The GtkComboBox has a slightly different appearance and behaviour) - Fixed font name corruption when pressing Cancel on the font selection dialog - Fixed data corruption when saving (wowzer!) - Fixed wrong alignment numbers for ASS scripts - Fixed truncated outline / shadow sizes - Allow non-integer values for outline / shadow sizes in the UI - Use "1" and "0" for boolean values in ASS scripts (as opposed to "-1" and "0" for SSA) - When using "Save As", add the new filename to the Recent Files menu BETA3 - Changed Splashscreen (Seto Bridge) - If opening non-UTF8 file containing non-ASCII characters, present a warning to the user - If selecting a line, set the current time markers to that of the line - Converted "style" into C++ class - Fixed "0" values being saved as "" - Made GTK 2.6 a requirement BETA2 - Rewrote the "Save" code (Now much cleaner and better designed, but no difference from user perspective) - Fix mute if wave has only one channel - If you change text and press Enter and the next line is already timed, load that line's time instead of advancing to after the current event BETA1 - Fixed small bug in Win32 audio code - Fixed crash on certain 'play' commands if no sound is loaded 0.1.5 BETA16 - Fix "Join lines with 2 spaces" option. (Adds two spaces after "!", or "." (except "...") or "?", but otherwise one) BETA15 - Don't choke on files if they start with a UTF8 BOM. BETA14 - Fixed saving/loading zoom state in workspace - Fixed Split Line sometimes eating a character at the end of the line BETA13 - Wrong build in BETA12 BETA12 - Added more debugging info to sound logging BETA11 - When using "Shift Times", the milisecond value was not properly being used. BETA10 - Fix problems with collisions not being disabled even if "Disable Collisions" is on - Fix problems with some other options not actually being in the state shown on the options page - When grabbing to multiple lines, don't replace the text of all the lines (only one) - Improved performance when selecting a line in the event list and collision detection is on - Made Collision Detection be off by default due to performance problems. - Fixed properties getting lost BETA9 - The "Play Marker" should no longer stay visible after using "Play from Start Marker" event - Using "Grab Time" no longer puts the line index into the name field - New Shortcuts (While a wave or list is focused) W - "Play from Start Marker" E - "Advance" (moves the start marker to the end marker and the end marker 2 seconds after) Q - "Stop Playing" (stops any sound currently playing) - Fix crash if the audio file stored in the workspace cannot be opened. - Adding a blank line automatically focuses it - Improved list iterators (they are now aware about changes to the parent lists) - Fixed Pasting (it did not insert the events in the proper order internally!) - Added thorough error checking / input validation to the code converted to C++. - If you hold down one of the Marker Move buttons while the video is displayed, the buttons will no longer get "stuck" (which happened under certain circumstances before) - Moved the Text Editor below the wave (Need Feedback on this) (There is an option to put it back in the "usual" place) - Changing layer recalculates collisions appropriately - Changing Event type to Comment/Dialog recalculates collisions appropriately - Added 'Debug Log' feature. Right now if enabled, logs information about status of sound code - Don't assume the event list is in sorted order when joining lines - Changing Layer and Style are now instant - Changing Layer and Style now affects all selected rows - Selecting multiple lines appropriately highlights collisions for all the selected lines - Don't allow setting Type (Dialog/Comment) on blank events - Added "text" files to "All Formats" list when displaying the Open Script dialog - Fix crash if exiting sabbu while editing text inline in the event list - Colors for the events list and the waveform are now customizable (and saved) (You can right click a color to reset it) - Internal handling of colors has been changed to make this possible. (created kryColor and kryColorTable classes) - sabbu.gtkrc will no longer be overwritten on install if it exists so that any user customizations there will be preserved - Save 'Marked Keyframes' state in the Workspace - Fixed crash if Closing Audio with Marked Keyframes - Fixed crash if selecting Close Video after closing a video - Fixed Joining Lines - Joining lines + Collision now works properly - Splitting lines + Collisions now work properly BETA8 - If pasting at the end of the script, add blank lines as necessary - Fixed a bug that would not save an event that was pasted in one of the blanks at the end of the script - Fixed paste event feature (it was pasting events above the current row instead of after) - Fixed a random crash when importing text files - No longer including Marked column for ASS files - Fixed saving on locales that use comma for the decimal point. (Thanks to Jernej Simoncic for the bug report) - Fixed Copy/Paste/Split (which got broken when I rewrote the Events part of sabbu) - Fixed the calculation of the end of the second part during splitting - Moved the description frame on the options tab to the bottom - For beta builds, include the beta build id as part of the version string so that the beta currently being used can be easily identified - Changed version format from "sabbu N.NN BETA" to "N.N.N" - Fixed bug that would cut off the last line of the script - Improved Sabbu Setup creation. Version is shared with the application itself so there should be no more discrepencies between setup and sabbu BETA7 (incl. BETA6, BETA5) - When parsing the colunn order string for events or styles, ignore any spaces after the column name. (Thanks to Jernej Simoncic for the bug report) - When parsing the column order string for events or styles, use case insensitive comparison. (Thanks to Jernej Simoncic for the bug report) - Includes a crash handler so that you can now send me information that makes it easier for me to find sources of crashes - ChangeLog is now installed with the application (also added as a shortcut in the Sabbu start menu group) - No longer restores selection info in the workspace if the script referenced by the workspace fails to load - If a workspace did not contain a saved script, the title did not display the workspace name before - Full path to workspace is no longer displayed in the title bar, only the name of the file - If you have a workspace open and an untitled script open and then quit & save, the new file information was not being included in the workspace - If the last line in a script doesn't end in a newline, don't fail to load that line - When resizing the main window, the event area now takes up the new space instead of the waves - Collision Detection - All events that collide are always displayed in light red in the event list - When you select an event in the list, the events it collides with are highlighted in dark red (The speed under certain conditions still needs improvement) - Internal Changes (i.e. things you probably don't want to read) - Slowly converting the entire project to C++ - Created a Hash class as a wrapper around GHashTable in order to make current uses of hashes more simple, more clean and less error prone - Rewrote the "subtitle script" object as a C++ class which made things cleaner/simpler - List iterators are no longer pointers which should reduce memory leaks - Split the list class from the list iterator class which made using the iterator a bit simpler - Changed the iterator interface a bit to make it less error prone - Doing some minor work separating UI from code - Added Iterator Validations which should make Iterator problems easier to find - Created an Events class to make working with events easier - Rewrote some code to use signals to make the code more clean - The sabbu images are now compiled into the executable on Windows. This should prevent any image loading problems during startup. - Fixed image problems when running sabbu from a different dir than its installed in (For example by using Open With in Explorer) BETA4 - Created a separate tab for options. Each option is accompanied by a description so hopefully the options will be less confusing. - Added "two button" mode. In this mode, instead of using four buttons to control a time marker (+100ms, -100ms, +10ms, -10ms), you can use two buttons to accomplish the same with less mouse movements. Regular click moves the marker by 100ms but a Control+Click moves it by 10ms. - Improved font selection dialog - Font names are as they appear in other Windows applications - Shows a better preview of the font - Ability to Select Underline/Strikethrough styles in font dialog - Columns in the event list can now be adjusted - All Audio channels now have the options to be zoomed/scaled/scrolled independantly of othe audio channels (previously this was limited to clones) - Save/Open dialogs are launched in separate threads which should not make it seem as if the program is frozen while the Save/Open dialog is shown - Video Nav / Jump controls are disabled/enabled appropriately to prevent confusion - Video Sync Toggle is automatically disabled/enabled to indicate when it is not in effect/in effect in order to cause less confusion - Added "Jump to Event Start" and "Jump to Event End" buttons in the video tab - Reorganized the about screen - Added image from splash screen - Made email and website clickable - Added some tooltips to the video tab - Fixed typo ("Appearance" tab was spelled as "Appearence") BETA3 - Preview text is no longer redrawn if no changes are made (Scrolling through a movie is much faster now) - Blank lines in the middle of the list can now be deleted - Comments are now properly colored when loaded from while - Blank lines no longer display a layer when loaded from file - You can now use the Save As option to convert between SSA <-> ASS BETA2 - Fixed crash if a script was being opened while AutoSave was taking place BETA1 - Allow Hiding/Showing of style editor - Cleaned up duplicate accelerators (one letter in-menu shortcuts) for menus - Using 'Bottom of Script' in empty script no longer gives a bunch of warnings - Holding the 'Move Time Marker' buttons down will cause the markers to move repeatedly for as long as you hold the mouse down - Using Shortcuts to change time when a script is loaded, but no audio is loaded no longer crashes the program - Navigation Commands, Play Next/Prev row commands now save the text data before switching rows - Shift Times feature - Shift All Rows, Selected rows, Non-selected rows, All before First Selected Row, All From First Selected row - Affect Start Time, End Time or both - The Transformation tab in the style editor has been slightly reorganized - Subtitle Alignment is now a grid instead of a combo box - Added Scale X, Scale Y and Spacing to Transformations properties - Style Picker is now located outside of 'Appearance' and 'Transformation' tabs - Angle value in script file was not being displayed in the angle spinner - Allow style angle bigger than 360 and allow non-integer angles - When importing a text file, character names (if present) are imported - Extra whitespace is eliminated when importing text files - When sabbu is opened with a filename, it now uses the contents to determine file type instead of the extension. This way, you can use "Open With ..." on any file - Split Lines - Can split multiple lines at the same time - Can split by placing cursor in text via the 'Split at Cursor' command - Join Lines - Can Join multiple groups of lines and groups of any number of lines (Non-adjacent groups of lines are joined into one line each) - Option to use two spaces when joining lines (when joining on a comma, semicolon, or colon then only one space is used) - Cleaned up Autosave system - Autosaves are placed in a separate directory - Allow operation on multiple rows - Grab times to multiple rows - Delete multiple rows - Copy/Cut/Paste multiple rows - Change Event Type - Adding blanks above/below - New Splash Screen - I took the picture during a festial in Kurashiki 0.11b - Fixed installation for those who did not have GTK installed (most people =) - Fixed saving the state of the 'save data aligned' option (Will no longer see an error if you use this option) 0.11a - Allow usage of scroll wheel to scroll wave 0.11 - Fixed icon problem if user is using the 'WIMP' theme. (Windows only) (This theme is used if GAIM is installed before Sabbu) - Fixed wrong initial scale value for a clone if parent has non-default scale value - Fixed wrong initial zoom value for a clone if parent has non-default zoom value - More compact toolbars - Using 'Grab Times' button will advance onto next row. (The Alt+G shortcut already did) - Pasting now actually works properly - Added many keyboard shortcuts that are available in SSA - Added a keyboard shortcut reference page to the Help menu - Add ability to import text files - Loading file from disk is now around 6x faster (however, unless the episode you're timing is a day long, loading speed shouldn't be a problem) (the time it takes to populate the list is still a bit slow for my taste) - About dialog - Linux build now uses autoconf and friends - Allow user to select which extensions to associate - Renamed 'save aligned' featured in the menu