Moritz Bunkus
95550f3644
Renamed panel to frame_panel and m_panel to m_page_panel.
2009-03-22 20:44:02 +01:00
Moritz Bunkus
99a483c9ee
Use a panel for the header editor window background.
...
Otherwise the window will look strange on Windows.
2009-03-22 20:41:01 +01:00
Moritz Bunkus
f727715599
Only open the pre-defined muh.mkv if the environment variable MTX_DEBUG is set.
2009-03-22 20:38:53 +01:00
Moritz Bunkus
d41390aa10
Replaced the wxTreebook in the header editor with a wxTreeCtrl and my own control logic.
...
The reason is that the wxTreebook offers the program almost no control over
the size of the tree and the pages. This causes weird effects both on Linux
and on Windows: the tree is often way to small, it gets resized each time
the user selects an item, tree items are not redrawn properly on Windows.
2009-03-22 20:07:15 +01:00
Moritz Bunkus
80aba95b89
Merge branch 'master' of file:///home/mosu/prog/video/mkvtoolnix
2009-03-22 15:27:03 +01:00
Moritz Bunkus
9afaf82770
Typo.
2009-03-22 15:25:22 +01:00
Moritz Bunkus
40a1dc6ff5
Windows doesn't seem to like such big event IDs.
2009-03-22 00:45:56 +01:00
Moritz Bunkus
e381505950
Fixes for compilation with mingw/other wxWidgets version.
2009-03-22 00:37:01 +01:00
Moritz Bunkus
5693b3d73a
Remove wxWidgets 2.6 compatiblity options
...
mmg requires wxWidgets 2.8 now which defines wxFD_OPEN etc. No need to check for it in configure.
2009-03-22 00:14:27 +01:00
Moritz Bunkus
1e88b396e1
The header editor requires wxWidgets 2.8.0.
2009-03-22 00:09:34 +01:00
Moritz Bunkus
0003a1b523
Added documentation for the header editor.
2009-03-22 00:09:11 +01:00
Moritz Bunkus
7fd8717588
Don't expand the header elements after loading the file.
2009-03-21 23:29:59 +01:00
Moritz Bunkus
97f8f14a73
Added an option --edit-headers for mmg to start with the header editor opening the given file name.
2009-03-21 23:18:02 +01:00
Moritz Bunkus
f9603aa9ac
Translated the header editor into German.
2009-03-21 20:00:27 +01:00
Moritz Bunkus
d80bf052ec
Changed debug code to production code.
2009-03-21 19:03:27 +01:00
Moritz Bunkus
0a7bf065bf
Removed debug code.
2009-03-21 19:00:33 +01:00
Moritz Bunkus
f9e4b3834a
Remove trailing zeroes and trailing decimal points from the output of floating point header fields.
2009-03-21 18:59:35 +01:00
Moritz Bunkus
5e927637fd
Added most audio and video specific track parameters.
2009-03-21 18:54:36 +01:00
Moritz Bunkus
b79abf3803
Added support for header values in sub-masters (e.g. the video or audio specific track parameters).
2009-03-21 18:37:16 +01:00
Moritz Bunkus
aa08f99fb4
Added language selection pages to the header editor.
2009-03-21 16:31:23 +01:00
Moritz Bunkus
7789e54c8f
Added bit value pages to the header editor (for segment UIDs etc).
2009-03-21 16:00:37 +01:00
Moritz Bunkus
638199409d
Added a float header value page.
...
And also the track timecode scale header value.
2009-03-21 15:22:24 +01:00
Moritz Bunkus
cd91b8f622
Added a couple of header fields and two value type pages.
2009-03-21 15:22:24 +01:00
Moritz Bunkus
3df11deddd
Updated a couple of descriptions.
2009-03-21 15:22:23 +01:00
Moritz Bunkus
6fc87467fd
Let the child page insert itself into the parent's list of children
...
Saves one line of code per page.
2009-03-21 15:22:23 +01:00
Moritz Bunkus
5ac42ff8b2
Header editor: cosmetics for the GUI
...
Only display the "segment info" and "tracks" elements once each.
Always display the "segment info" element before the "tracks" element.
2009-03-21 15:22:23 +01:00
Moritz Bunkus
ea2dca74fb
Various bug fixes to the "update element in existing Matroska file" algorithm
...
Also added support for a rare situation during the update to the meta seek elements.
2009-03-21 15:22:23 +01:00
Moritz Bunkus
27cf4317bd
Rewrite of the "update specific element in existing Matroska file" function, part 1
2009-03-21 15:22:22 +01:00
Moritz Bunkus
095bc5505b
Rewrite of the "update specific element in existing Matroska file" function, part 1
2009-03-21 15:22:22 +01:00
Moritz Bunkus
b38da2caca
Enabled saving in the header editor
...
Saving is enabled but buggy. kax_analyzer_c::update_element() be completely rewritten.
Created a page class for top level pages (segment info, track).
2009-03-21 15:22:22 +01:00
Moritz Bunkus
71ad224422
Refactoring of header editor functions
...
1. The he_page_base_c class contains the functions for checking all its children. The derived classes have a "..._this()" function for validation, modification and looking for changes that only take care of itself but not if its children.
2. Added a function for displaying appropriate messages for the result of the analyzer's update_element() function (still unused).
2009-03-21 15:22:22 +01:00
Moritz Bunkus
60e6e8429b
The kax_analyzer_c::update_element() function returns an error code and does not display messages.
...
That way the calling function can display proper error messages depending on the element types it tries to write.
At the moment only the chapter editor uses this function, but the header editor will as well.
2009-03-21 15:22:21 +01:00
Moritz Bunkus
81e797c324
Use the wxProgressDialog for displaying the analysis progress.
2009-03-21 15:22:21 +01:00
Moritz Bunkus
7de5072059
Various new functions in the header editor.
...
1. Implemented the code for processing the modifications the user did in the UI by altering the Ebml* structures (untested).
2. Implemented a "reload file" function.
3. Implemented the sanity checks in the "save file" logic:
3.1. a check if the file has been modified since the header editor had read it,
3.2. a check if there were actual modifications,
3.3. a check if the modifications are valid.
2009-03-21 15:22:21 +01:00
Moritz Bunkus
5011fc3d94
Display the header editor value pages in a grid layout.
...
Also add a type description so the user knows what he may enter.
2009-03-21 15:22:21 +01:00
Moritz Bunkus
503f2ea882
Store a pointer to the top level page for each subtree page.
2009-03-21 15:22:20 +01:00
Moritz Bunkus
3d5d0dda06
Store EbmlCallbacks instead of EbmlIds.
...
The reason is that the EbmlCallbacks can be used to create new objects which I will need later.
2009-03-21 15:22:20 +01:00
Moritz Bunkus
ad369a59b7
Moved all header editor classes into separate files.
...
Also moved common functions into common* files.
2009-03-21 15:22:20 +01:00
Moritz Bunkus
0febefa46c
Header editor: Use validator and validate unsigned integer values
2009-03-21 15:22:20 +01:00
Moritz Bunkus
781a2646a1
Added functions for parsing unsigned integer values.
...
I need this for wxWidgets, and the wxString::To(U)LongLong() functions
seem not to be compiled on my wxWidgets.
2009-03-21 15:22:19 +01:00
Moritz Bunkus
0f6a538326
Header editor: Handle "item will not be present after saving" as being valid.
2009-03-21 15:22:19 +01:00
Moritz Bunkus
c6182c4fda
Header editor: En-/disable the input when the user clicks the "add/remove" checkbox
2009-03-21 15:22:19 +01:00
Moritz Bunkus
b77b367364
Header editor: Implemented the "Reset" button for value pages.
...
The values are reset to their original value, and the
"add or remove" checkboxes are unchecked.
2009-03-21 15:22:19 +01:00
Moritz Bunkus
28fa970eb6
Tons of updates for the header editor
...
1. Removed debug code.
2. Made he_value_page_c a pure virtual base class. It provides the basic layout and lets the children create the type specific controls.
3. Added he_string_value_page_c for string values.
4. Added he_unsigned_integer_value_page_c for unsigned integer values.
5. Added functions for validating all header values.
6. Added functions for finding out whether or not any header value has been changed.
7. Added a function for closing the opened file and clearing the inputs.
8. Added functions and menu entries for expanding/collapsing all entries. All entries are expanded after loading.
2009-03-21 15:22:19 +01:00
Moritz Bunkus
94417d2a11
Much more code for the header editor.
2009-03-21 15:22:18 +01:00
Moritz Bunkus
dcdf7c0b67
The start of a header editor
...
Added the menu entry and the basic window layout.
2009-03-21 15:22:18 +01:00
Moritz Bunkus
aa198b5ce8
Updated the Japanese translation.
2009-03-21 12:16:03 +01:00
Moritz Bunkus
52d1ee5fb9
Updates to the translation.
2009-03-21 11:43:50 +01:00
Moritz Bunkus
f6c60e371c
Added a make target for displaying msgfmt statistics for all translations.
2009-03-21 11:41:28 +01:00
Moritz Bunkus
ca158fde4a
Convert simple chapter output to the current output charset instead of always converting to UTF-8.
...
This allows the user to change the charset with --output-charset.
Before chapters were not converted at all resulting in UTF-8 output
on every system, and --output-charset had no effect on it.
This does not affect the output of XML style chapter files.
Fix for bug 359.
2009-03-21 11:36:19 +01:00