summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/util/xmlfile.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fixed a few class memory access warnings. Vas Crabb2024-04-141-3/+5
|
* util/ioprocs.cpp: Added wrappers for common patterns. (#11608) Vas Crabb2024-02-251-6/+4
| | | | | emu/diimage.h: Removed fread overloads that allocate memory for output. util/core_file.cpp: Changed output size of load to size_t.
* xmlfile.cpp: Replace implementation of normalize_string with similar one in ↵ AJR2023-02-121-17/+12
| | | | infoxml.cpp that returns a new std::string instead of a static buffer
* -debugger: Improved session save/restore. Vas Crabb2022-12-021-2/+8
| | | | | | | | | | | | * Qt: Save expression for memory and disassembly views. * Qt: Made command history behave more like Cocoa. * Qt: Added expression history and made behaviour more like Cocoa. * Qt: Refactored global notifications to use signals. * Win32: Increased command/expression history size to 100 items. * Cocoa: Save state of device info viewer windows. * Qt/Win32/Cocoa: Save command/expression history. -util/xmlfile.cpp: Fixed bug where copyInto failed to copy nodes.
* Fixed a few issues identified by Coverity: Vas Crabb2022-11-061-42/+2
| | | | | | | | | | | | | | | | | * cpu/m6805: Removed unnecessary comparison that can't be true from 'HC05 timer handler. * machine/z80scc.cpp: Fixed flag test in logging. * emu/devdelegate.h: Fixed use-after-move in functoid constructor. * util/unzip.cpp: Fixed integer promotion issue in ZIP16 member header handling. * util/xmlfile.cpp: Got rid of custom allocator functions that have alignment issues and no longer provide value. * capcom/alien.cpp: Use machine().rand() for determinism. * ensoniq/esqpanel.cpp: I/O stream eof() returns whether a read stopped short due to EOF, not whether the file pointer is at EOF. * sega/sms.cpp: Fixed a few use-after-move errors. * osd/modules/monitor: Fixed an apparent bug in what appears to be a setter member function.
* util: Further API cleanups: (#8661) Vas Crabb2021-10-051-9/+11
| | | | | * Turned `core_file` into an implementation of `random_read_write`. * Turned PNG errors into a standard error category. * Added a helper for generating what look like derived classes on-the-fly.
* Low-level #include overhaul AJR2021-01-021-0/+2
| | | | | | | - vecstream.h: Revert changes made in aa29519528cb3dbdbfac56819bea670ed8c56c5d. The std::string_view conversion has been made a non-member function (util::buf_to_string_view) and moved to coretmpl.h. - strformat.h: Remove the using declaration importing util::string_format into the global namespace. It has been moved to emucore.h and a few tool sources; other references have been qualified. - osdcore.h: Split out file, directory and path classes and methods to a new header (osdfile.h), Doxygenizing the documentation comments. - Disaggregate many #includes that were including other standard or custom headers. emu.h now includes basically the same things that it did, but other headers have been streamlined; for instance, emucore.h no longer stealth-includes osdcore.h several ways.
* Further additions of std::string_view AJR2021-01-011-9/+25
| | | | | | | - corefile.cpp, fileio.cpp: Change puts to take a std::string_view parameter - rendlay.cpp: Use std::string_view instead of bare pointers in various functions - vecstream.h: Add std::string_view conversion operator to obtain output buffer without needing to make it a C string with explicit null termination - xmlfile.cpp: Add get_attribute_string_ptr method that distinguishes between empty strings and absent attributes without falling back to C strings
* util/xmlfile.cpp: C++ comment conversion AJR2020-12-311-225/+225
|
* -Switch to building MAME as C++17. Vas Crabb2020-11-151-3/+2
| | | | | | | * Updated sol2 to 3.2.2 * Updated pugixml to 1.10 * Increased minimum clang version to 6 * Cleaned up some stuff that can use new features
* -emu/rendlay.cpp: Allow item animation. Vas Crabb2020-10-051-5/+4
| | | | -cgang.cpp: Make internal artwork more fun.
* xmlfile.cpp: Put newline where it’s supposed to go after element content. Vas Crabb2020-09-061-1/+2
|
* -util/xmlfile: Escape attribute and element content. Vas Crabb2020-09-061-4/+42
| | | | | | | | | | | | | | | | | | | | The previous behaviour was unintuitive - parsing an XML file and writing it out immediately would produce invalid XML if the file contained any characters that needed escaping. It makes far more sense to escape on writing rather than expecting the user to escape input. -Add preliminary support for visibility toggles to artwork system. This allows the user to show/hide related elements in a view, with nesting. The view can specify whether elements are shown or hidden by default. Settings are saved per host window/screen per view. There is no way to set the initial visibility state on the command line. Legacy "Space Invaders cabinet model" layers are mapped onto visibility toggles. This is not stable yet. In particular, the XML element/attribute names have not been finalised. The new features have not been added to complay.py to prevent them from being used before they're finalised.
* Don't ignore config elements with attributes but no child nodes. Vas Crabb2020-09-021-3/+13
|
* frontend: Added option to skip repeated imperfect emulation warnings. Vas Crabb2020-09-021-9/+8
| | | | | | | | | | | | | | | | The option is called skip_warnings, and it must be set in ui.ini (it can be set using the internal UI). Red warnings cannot be skipped; yellow warning can be skipped under certain circumstances. For a yellow warning to be skipped, the system must have been launched in a way that allows warnings to be displayed, in a configuration with the same set of devices flagged with unemulated/imperfect features, within the last seven days, and the warning must have been displayed within the past 14 days. Also fixed a bug with display of the MACHINE_NO_COCKTAIL flag in the internal UI, and increased the size of XML integer attributes to 64 bits.
* Revert "fixed some modernize-use-equals-default clang-tidy warnings (… (#6360) Oliver Stöneberg2020-04-081-0/+3
| | | | | | | * Revert "fixed some modernize-use-equals-default clang-tidy warnings (nw)" This reverts commit 54486ab9 * fixed merge error
* fixed some modernize-use-auto clang-tidy warnings (nw) (#6238) Oliver Stöneberg2020-01-301-4/+4
|
* fixed some modernize-use-equals-default clang-tidy warnings (nw) (#6237) Oliver Stöneberg2020-01-301-3/+0
|
* use C++ library includes (nw) firewave2020-01-221-1/+1
|
* rendlay: allow user variables and repetition in layouts, also add a few more ↵ Vas Crabb2018-07-221-1/+1
| | | | predefined variables
* use C locale for int/float in XML files Vas Crabb2018-01-051-22/+48
|
* Add a method for copying part of an XML tree into another tree and use it to ↵ Vas Crabb2017-07-211-6/+54
| | | | fix Cocoa debugger fatal error
* * Make XML file a class of its own managed with smart poitners Vas Crabb2017-07-211-63/+61
| | | | * Save/restore a little more of Cocoa debugger state
* XML refactoring: Vas Crabb2016-12-111-97/+102
| | | | | | | * move stuff to namespace util::xml * scope down some enums * split config load/save delegate types * make config load take const so it can't mangle data
* Work around buggy standard libraries (nw) Vas Crabb2016-11-211-2/+2
|
* gah, wasn't quite compatible (nw) Vas Crabb2016-11-171-3/+3
|
* more xmlfile cleanup (nw) Vas Crabb2016-11-171-126/+30
| | | | | | | | * an empty tag and a self-closing tag are semantically equivalent, so std::string can be used saving some manual allocation * a valid tag can't have an empty name, so that can be std::string too * still expose empty strings as nullptr to API users * scope down the int_format enum * # is not £ ffs
* Turn xmlfile API into something that looks like C++ Vas Crabb2016-11-171-492/+387
| | | | It's still a bit quirky but it's far better encapsulated before, and it plays nice with const (nw)
* Cleanup linux OSD (nw) Miodrag Milanovic2016-10-221-1/+1
|
* more TRUE/FALSE cleanup (nw) Miodrag Milanovic2016-10-221-5/+5
|
* NOTICE (TYPE NAME CONSOLIDATION) Miodrag Milanovic2016-10-221-7/+7
| | | | | Use standard uint64_t, uint32_t, uint16_t or uint8_t instead of UINT64, UINT32, UINT16 or UINT8 also use standard int64_t, int32_t, int16_t or int8_t instead of INT64, INT32, INT16 or INT8
* Various cleanups suggested by static analyzer (nw) Miodrag Milanovic2016-04-241-6/+6
|
* Turn core_file into a proper class that gets cleaned up safely using unique_ptr Vas Crabb2016-03-061-15/+15
| | | | Subverted somewhat by chd_file class
* clang-modernize part 1 (nw) Miodrag Milanovic2015-12-031-72/+72
|
* Rename *.c -> *.cpp in our source (nw) Miodrag Milanovic2015-11-081-0/+1100