Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: KalopsiaTwilight/WDBXEditor2
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.0.12
Choose a base ref
...
head repository: KalopsiaTwilight/WDBXEditor2
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Loading
Showing with 5,218 additions and 700 deletions.
  1. +67 −1 README.md
  2. +337 −0 WDBXEditor2.Core/DBCDHelper.cs
  3. +130 −0 WDBXEditor2.Core/DBCDRowTypeDescriptionProvider.cs
  4. +9 −0 WDBXEditor2.Core/IProgressReporter.cs
  5. +146 −0 WDBXEditor2.Core/Operations/EditOperations.cs
  6. +68 −0 WDBXEditor2.Core/Operations/ExportToCsvOperation.cs
  7. +404 −0 WDBXEditor2.Core/Operations/ExportToSqlOperations.cs
  8. +94 −0 WDBXEditor2.Core/Operations/ImportFromCsvOperation.cs
  9. +188 −0 WDBXEditor2.Core/Operations/ImportFromSqlOperations.cs
  10. +41 −0 WDBXEditor2.Core/Operations/SaveDb2ToFileOperation.cs
  11. +9 −0 WDBXEditor2.Core/ProgressReportingRequest.cs
  12. +17 −0 WDBXEditor2.Core/WDBXEditor2.Core.csproj
  13. +55 −0 WDBXEditor2.Tools.Core/Config/ImportExportConfig.cs
  14. +95 −0 WDBXEditor2.Tools.Core/Config/ImportExportConfigBinder.cs
  15. +48 −0 WDBXEditor2.Tools.Core/ConsoleProgressReporter.cs
  16. +114 −0 WDBXEditor2.Tools.Core/ProgressBar.cs
  17. +17 −0 WDBXEditor2.Tools.Core/WDBXEditor2.Tools.Core.csproj
  18. +13 −0 WDBXEditor2.Tools.WDBX2Sync/Constants.cs
  19. +694 −0 WDBXEditor2.Tools.WDBX2Sync/Program.cs
  20. +17 −0 WDBXEditor2.Tools.WDBX2Sync/WDBXEditor2.Tools.WDBX2Sync.csproj
  21. +24 −0 WDBXEditor2.sln
  22. +1 −1 WDBXEditor2/App.xaml
  23. +50 −11 WDBXEditor2/App.xaml.cs
  24. +21 −17 WDBXEditor2/Controller/DBLoader.cs
  25. +157 −0 WDBXEditor2/Controls/NumericTextbox.cs
  26. +72 −0 WDBXEditor2/Controls/NumericValidationRule.cs
  27. +34 −0 WDBXEditor2/Controls/PositiveIntegerValidationRule.cs
  28. +0 −67 WDBXEditor2/Helpers/ConvertHelper.cs
  29. +77 −27 WDBXEditor2/MainWindow.xaml
  30. +404 −424 WDBXEditor2/MainWindow.xaml.cs
  31. +24 −0 WDBXEditor2/Misc/Constants.cs
  32. +32 −0 WDBXEditor2/Misc/Filter.cs
  33. +46 −0 WDBXEditor2/Misc/MainWindowProgressReporter.cs
  34. +16 −7 WDBXEditor2/Misc/SettingStorage.cs
  35. +140 −0 WDBXEditor2/Operations/ReloadDataViewOperation.cs
  36. +8 −9 WDBXEditor2/Views/DefinitionSelect.xaml.cs
  37. +124 −0 WDBXEditor2/Views/ExportSqlWindow.xaml
  38. +559 −0 WDBXEditor2/Views/ExportSqlWindow.xaml.cs
  39. +43 −0 WDBXEditor2/Views/FindColumnWindow.xaml
  40. +53 −0 WDBXEditor2/Views/FindColumnWindow.xaml.cs
  41. +106 −0 WDBXEditor2/Views/ImportSqlWindow.xaml
  42. +533 −0 WDBXEditor2/Views/ImportSqlWindow.xaml.cs
  43. +8 −10 WDBXEditor2/Views/ReplaceColumnWindow.xaml.cs
  44. +7 −7 WDBXEditor2/Views/SetColumnWindow.xaml.cs
  45. +10 −10 WDBXEditor2/Views/SetDependentColumnWindow.xaml.cs
  46. +41 −40 WDBXEditor2/Views/SetFlagWindow.xaml
  47. +8 −22 WDBXEditor2/Views/SetFlagWindow.xaml.cs
  48. +55 −46 WDBXEditor2/WDBXEditor2.csproj
  49. +1 −1 scripts/publish.ps1
  50. +1 −0 scripts/publishSyncCmd.ps1
68 changes: 67 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -4,4 +4,70 @@ This is a DB2 Editor for the game World of Warcraft.
DB2 definitions come from [WoWDBDefs](https://github.com/wowdev/WoWDBDefs/tree/master/definitions) and uses the [DBCD](https://github.com/wowdev/DBCD) library.

### Requirements
* Visual Studio 2019 (.NET Core 3.1)
* Visual Studio 2022 (.NET 8)

# WDBX2Sync

This is a CLI tool for importing / exporting DB2 files to SQL / CSV files, allowing you to easily sync tables and files.

## Usage

**Main**

```
Usage:
WDBX2Sync [command] [options]
Options:
--version Show version information
-?, -h, --help Show help and usage information
Commands:
config Interact with the configuration file for this tool to provide default arguments.
export <inputFolder> Exports data from client files.
import <inputFolder> Imports data from a previous export to existing client files.
```

**Export**
```
Usage:
WDBX2Sync export <inputFolder> [options]
Arguments:
<inputFolder> Sets the input directory to source .db2 files from for exporting.
Options:
-m, --mode <Csv|Mysql|Sqlite> Sets the output format for the exporter. Possible values are: Csv, Mysql, Sqlite. Default: Csv [default: Csv]
-o, --output <output> Sets the output directory where the exported files will be stored. Default: current working directory.
-cp, --csvPath <csvPath> Sets the path to specifically write csv files to when mode is set to Csv. Default: output directory.
-mh, --mysqlHost <mysqlHost> Sets the hostname to use for MySql connections when mode is set to Mysql. Default: localhost [default: localhost]
-mp, --mysqlPort <mysqlPort> Sets the port to use for MySql connections when mode is set to Mysql. Default: 3306 [default: 3306]
-mdb, --mysqlDb <mysqlDb> Sets the database to use for MySql connections when mode is set to Mysql. Required when using this mode.
-mu, --mysqlUser <mysqlUser> Sets the user to use for MySql connections when mode is set to Mysql. Required when using this mode.
-mpw, --mysqlPass <mysqlPass> Sets the password to use for MySql connections when mode is set to Mysql.
-t, --table <table> Sets the filenames to export. Multiple --table options can be provided to specify multiple tables. Default: <all .db2 files>
-sf, --sqliteFile <sqliteFile> Sets the path for the SQLite database file when mode is set to Sqlite. Required when using this mode.
-?, -h, --help Show help and usage information
```

**Import**
```
Usage:
WDBX2Sync import <inputFolder> [options]
Arguments:
<inputFolder> Sets the input directory to source .db2 files from for importing.
Options:
-m, --mode <Csv|Mysql|Sqlite> Sets the operation mode for the exporter. Possible values are: Csv, Mysql, Sqlite. Default: Csv [default: Csv]
-o, --output <output> Sets the output directory where the edited files will be stored. Default: override input directory.
-cp, --csvPath <csvPath> Sets the path to read import csv files from when mode is set to Csv. Default: current working directory.
-mh, --mysqlHost <mysqlHost> Sets the hostname to use for MySql connections when mode is set to Mysql. Default: localhost [default: localhost]
-mp, --mysqlPort <mysqlPort> Sets the port to use for MySql connections when mode is set to Mysql. Default: 3306 [default: 3306]
-mdb, --mysqlDb <mysqlDb> Sets the database to use for MySql connections when mode is set to Mysql. Required when using this mode.
-mu, --mysqlUser <mysqlUser> Sets the user to use for MySql connections when mode is set to Mysql. Required when using this mode.
-mpw, --mysqlPass <mysqlPass> Sets the password to use for MySql connections when mode is set to Mysql.
-t, --table <table> Sets the table names to import. Multiple --table options can be provided to specify multiple tables. Default: <all .db2 files>
-sf, --sqliteFile <sqliteFile> Sets the path for the SQLite database file when mode is set to Sqlite. Required when using this mode.
-?, -h, --help Show help and usage information
```
Loading