Commit Graph
51 Commits
Author SHA1 Message Date
Neil HorneandGitHub 71b0614503 feat(cpn): Identify new and changed models by italicising row (#3840)
* enh(cpn): identify new and changed models by italicising row

* enh(cpn): identify drag n drop and new from template as changed
2023-09-02 18:37:27 +10:00
Neil HorneandGitHub 64f4968e89 fix(cpn): Model and labels lists sync (#3967)
* labels use proxy model mapping to source

* cosmetics

* Fix model list focus

* fix model focus on change to labels
2023-08-26 20:06:10 +10:00
Neil HorneandGitHub 42098ae514 feat(cpn): Add radio sort order edit and sorting models list by any column (#3659)
* feat(cpn): Add radio sort order edit (color) and sorting models list by any column (all)

* Add column double click to enable/disable model sorting (disabled by default)
2023-06-23 09:07:55 +10:00
Neil HorneandGitHub 45e76f3a3d fix(cpn): Inability to paste model to empty slot on B&W radios (#3371)
* Fix(cpn) - paste model to empty slot non-labels radios
Chore(cpn) - remove traces of categories

* Turn off debug msgs
2023-03-27 13:34:00 +10:00
Neil HorneandGitHub d952333037 feat(cpn): Status dialog when writing models and settings to radio (#3043) 2023-01-26 13:53:13 +10:00
CliffandGitHub 333c2828ea fix(color): Limit label lengths, improve lbl display, prevent inv. char (#2287)
* (cpn) Add bullets & length warning

* (fw) Show labels with bullet separators

* (fw) Check all running twice. Remove from here

* (fw) Correct buffer overflow when labels too long

* (fw) Rem bullets in model label string

* (fw, cpn) Labels length

cpn,fw Limit label length
cpn Check correct model on rename length
cpn Focus issues
cpn Add rename,  move up/down.. still has an issue with selection. TODO...
cpn Switch to utf8 encoding
cpn Rename button ;)

* (cpn) Move up down working

re-Fix Checkbox, partially isn't what I thought (not greyed)

* (fw) Add CSV string funcs

Limit length of model edit shorter in portrait mode

* (cpn) Correct Label option showing on B&W

* (fw) Radio filename set but no file exists don't create

* (cpn) Simplify wording

* (fw) Correct debug values

* (fw) Reduce truncation length

* (both) Don't allow special chars in label name

(cpn) Prevent move when at top and bottom
(fw) Remove multiple label length defines
(fw) Shorten truncate length even more

* (fw) Close model_select on new model
2022-09-18 10:47:21 +10:00
Neil HorneandGitHub ab640e3055 feat(cpn): Rename model Save to Export (#2296) 2022-09-08 19:10:08 +10:00
dlktdrandPeter Feerick 441d7a25f1 (cpn) Warning if rename to duplicate 2022-09-06 21:04:10 +10:00
dlktdrandPeter Feerick 93bfd5b264 (cpn) fix not marking as modified 2022-09-06 21:04:10 +10:00
dlktdrandPeter Feerick 9131125b58 (cpn) Remove more un-unsed code, new set. add "Fav" lbl 2022-09-06 21:04:10 +10:00
c8693569b0 feat(color): New label based Model Selector (#1374)
* Model Labels Selector

* Portrait Layout

* Receiver ID Check

* Fix Labels .yml format

* Companion Initial Commit

commit 967ddf3979b4954402fe62c858faba4b7a416bba
Author: dlktdr <cblackburn320@gmail.com>
Date:   Mon Aug 29 01:49:15 2022 -0700

    Fix Labels .yml format

commit 534221cad9e01146c47a9ac1080a655e04f1f6c8
Author: dlktdr <cblackburn320@gmail.com>
Date:   Mon Aug 29 01:20:57 2022 -0700

    Receiver ID Check

commit f32c0939d44e9ae60bc0705a9176354c23fec198
Author: dlktdr <cblackburn320@gmail.com>
Date:   Sun Aug 28 23:13:25 2022 -0700

    Portrait Layout

commit 961181217c7841ff3f21299ac6aa419b810f80e9
Author: dlktdr <cblackburn320@gmail.com>
Date:   Sat Dec 11 16:56:13 2021 -0800

    Model Labels Selector

commit dc99dd40d2
Author: David PHAM-VAN <1387855+DavBfr@users.noreply.github.com>
Date:   Fri Aug 26 03:04:34 2022 -0300

    feat: Allow Lua widget to override built-in widget with same name (#2208)

    * Allow CPP Widgets Override with LUA

    * Reset a widget option it the type differs

commit 4b747caff9
Author: eshifri <46511024+eshifri@users.noreply.github.com>
Date:   Thu Aug 25 19:47:53 2022 -0700

    fix: Write model name into models.yml when duplicating model (#2224)

    * Update model name in the models.yml file (#2214)

    * Fix the length of the name.

commit e97f23a305
Author: eshifri <46511024+eshifri@users.noreply.github.com>
Date:   Wed Aug 24 21:19:52 2022 -0700

    fix(cpn): Fix full path to model notes for Simulator (#2223)

* Correct Highlighted Column

* labels .yml indentation

* Update da.h

New defines translated to Danish

* Update dataconstants.h

Omit warnings due to difference of LEN_MODEL_FILENAME and LEN_MODEL_NAME in modellist.cpp

* Update modelslist.cpp

Wonder if this are the right file in PR #1374 (?), seems a lot are changed to the better in #1374

* Update dataconstants.h

Restore #define for LEN_MODEL_FILENAME to 16

* Rebase, Correct Issues

Delete now deletes instead of select
New model stores correct information
Duplicate save all information in cell
Rework items to use cell over button
Reword function variables

* CMPN: Add context menu

Fix output not functional. Removed Yaml::null at some point :)
Fix some compiler warnings

* CMPN: Compiler warning, replace ,->_ in list

* FW: Various Changes

Change view to a grid
Don't allow comma in label name
Add scroll indicators
Save sort order

Co-authored-by: HThuren <99370924+HThuren@users.noreply.github.com>
2022-09-03 09:01:19 +10:00
Neil HorneandGitHub 47a90ed38f feat(cpn): Add individual model save to yml (#1968)
- add save model(s) to context menu and toolbar
- new storage functions to support single model write
- modified yml storage format write functions
- default save directory is application sd card TEMPLATES
- model name used as default file name
2022-06-07 20:53:45 +10:00
Neil HorneandGitHub 1964560774 feat(cpn): Add two more new model actions: template and prompt (#1963)
* Add new model actions to application settings

* Add new model prompt action

* Tweak wording

* Add new model action template

* Open individual model yml files

* Tidy up after importing template

* Add create default and edit to prompt options

* Fix edit mode to display the edit dialog after model creation when selected in settings
2022-06-07 17:53:03 +10:00
Neil HorneandGitHub fcf8fbdfff Companion hardware internal module continued (#1342)
* Add ability to undo hardware internal module change

* Add internal module protocol check on model edit

* Event driven check and update of all models

* Fix model edit dialog searches

* Add OFF to list of internal modules

* Fix internal module protocol list issue #1382
2022-01-10 11:13:21 +10:00
elecpowerandRaphael Coeffic cade5c3529 Support reading and writing yaml settings from/to radio 2021-12-31 10:53:09 +01:00
rotormanandRaphael Coeffic 89517d8bd8 Use ETX instead of OTX (also as a file extension). 2021-12-31 10:53:08 +01:00
Max PapernoandBertrand Songis 0dbad182e8 [Companion] Radio conversion improvements (#5534)
* Move MultiposPots & MultiposPotsPositions capability lookups and getAnalogInputName() to Boards class.

* Add RawSource::isAvailable() and RawSwitch::isAvailable(); Add board type param to various RawSource lookup functions.

* Add CustomFunctionData::toString(), FlightModeData::toString(), FactoryInstalledPots board capability, MAX_SWITCH_TYPE, & break out GeneralSettings source/switch defaults to own function.

* Add RadioDataConversionState class for tracking conversion actions.

* Implement RadioDataConversionState handler, add conversion process report, and improve/fix conversion issues:
    * Make sure all switches/pots/knobs have default configs for destination board type;
    * Try to move more custom control names, intelligently;
    * Convert model timers and throttle source;
    * Adjust for Horus 6P switch in place of Taranis S2 knob;
    * Adjust for extra sliders on X12 and X9E to move LS and RS to proper slots as needed;
    * Make sure ALL controls are validated, eg. to always account for extra trims/analogs/switches/etc which don't exist on destination;
    * Properly indicate invalid RawSource::toString() items with "???".

* Allow user to cancel out of file conversions & provide ample warnings if switching radio type/profile with unsaved file(s) still open;
Also: Fix bug with some orphaned MdiChild windows never being deleted; Create static bool Storage::isBoardCompatible(b1, b2).

* Add maxLibQt "stub" (will not compile).

* Add ExportableTableView for better presentation of conversion results table.

* Move getFourCC() and isBoardCompatible() to Boards class.
2017-12-18 22:56:39 +01:00
Max Paperno 111bcad9a7 [Companion] Do not create a category in new file when loading data from radio; Fix crashes when editing category name. 2017-04-12 07:18:01 -04:00
Max Paperno 924ecced98 [Companion] Fix issue with category edit and dbl-click not working after category name edit; Add translator warnings on default model names; Remove redundant variable and consolidate filename change routines. 2017-04-11 22:54:58 -04:00
Max Paperno 350c3a6d44 [Companion] Do not run model wizard on a duplicated/copied model (fixes #4773); Replace existing file extension with .otx when first saving a converted bin/hex/eepe file (fixes #4772); Make sure no other models exist before setting first model as default (fix index 0 always being auto-selected). 2017-04-11 16:42:20 -04:00
Max PapernoandBertrand Songis d864a67c3b [Companion] Restore model drag/drop/compare, many UI improvements to main and sub-windows. (#4769)
* [Companion] Refactor MdiChild & TreeModel, restore drag/drop, and more:
    * Add full drag-and-drop functions to the models list, including model copy, move, and insert actions (also between windows);
    * Add general radio settings copy/paste across file windows;
    * Full MIME support with distinct types for various data (eg. models vs. general settings), also add new type for metadata (header);
    * Copied/cut models can now be inserted in any spot (similar to drop-insert);
    * Deleted/cut models can now be removed entirely (including the empty slot) for all radio types (any models after the removed one move up, like for Horus) (may need to make this an option);
    * Empty model slots can now also be removed (any models after the removed slot move up)  (but total # of slots is still maintained);
    * Default model can be deleted (new default is picked);
    * Completely revamp the actions system (copy/paste/edit/etc) to make it fully functional:
      * Actions exist in the window, not just context menu, therefore all keyboard shortcuts actually work, w/out any duplicated code;
      * Provides access from MainWindow in a comprehensive manner: all actions are available and properly updated based on selections in current editor window, w/out awkward event monitoring;
      * More actions available from context menu, and somewhat reorganized;
      * Also show all actions on mini toolbars right in the MDI window (possibly make optional later);
      * Updated English localization file to account for plurals usage in new action item names (other languages need to be updated);
    * Keyboard navigation in the model list now works/practical;
    * MDI window uses all available height by default;
    * Newly added models/categories are selected and highlighted; Category names are immediately editable; Model editor is/can be launched if wizard is not (need to make option);
    * MainWindow updates:
      * Edit toolbar and menu now showing all available edit actions, with proper context;
      * File menu properly updates with all "general" radio actions: edit/copy/paste settings and simulate radio;
      * Added Windows menu showing list of open windows (eg. to switch when full screen) and tabbed window option (need to make persistent setting);
      * Immediate update of icon size preference;
      * Do not delete toolbars when re-translating UI (they don't lose assigned position);

* [Companion] Restore model compare functionality by using new MIME data exchange system; Add ability to compare any number of models at a time; Multi-model printer now shows custom hardware settings for each dropped model (even from different radios).

* [Companion] Add missing monoblue & monowhite theme sdsync icons.

* [Companion] Model wizard starts with default model name populated.

* [Companion] Properly re-translate UI instead of recreating all the actions/etc.; Tell Mac specifically where to put our actions (seems to make it happier too).

* [Companion] Further improve handling of Window menu items/detection of sub-window changes.

* [Companion] Add file-close action.

* [Companion] Add user options and save preferences:
    * Option to use wizard, open editor, or do nothing on new model creation;
    * Option to remove empty model slots when deleting/moving models (in non-Horus radios);
    * Options to hide toolbars in document windows (r-click on TBs);
    * Save/restore size of document windows, and maximized/tabbed state;
    * Save/restore size/position of model compare window;
    * Add shortcuts for model compare, FW download, log viewer;

* [Companion] Disable being able to "delete" empty model slots (more awkward than helpful).
2017-04-10 19:29:41 +02:00
Max PapernoandBertrand Songis c1da4b9b4f [Companion][MdiChild] Add model context-menu actions for moving a model between categories (only if > 1 category exists). (#4555)
(ref. #4224 : Horus models cannot be moved from one category to another)
2017-03-05 08:47:10 +01:00
3djcandBertrand Songis b5798e219d Menu updates handling cat/models for Horus (#4452)
* Alt+S is properly set

* Copy menu fixed

* Cosmetics

* Better handling of model and categories signaling

* Cosmetics

* Cosmetics and handling of special case after model or cat creation

* Remove unused viableModelSelected

* Take 2

* Start work on connect to new standards
2017-02-15 16:28:39 +01:00
Kelly ByrdandDamjan Adamic a0aa883743 Fixed #4375, fix pasting multiple items in Companion. (#4381) 2017-02-03 10:26:31 +01:00
Kelly ByrdandDamjan Adamic f98f63fa55 Issue #4224: Implement "duplicate model" in Companion (#4367) 2017-02-03 10:10:51 +01:00
Kelly ByrdandDamjan Adamic bdd62104c1 Issue #4224: Paste into and across categories in Companion (#4371)
* Issue #4224. Allow pasting models into and across categories.
* Issue #4224: Add "Paste" to category conext menu.
2017-02-02 09:05:26 +01:00
Kelly ByrdandBertrand Songis c6026e8a0f Re #4224 Add "rename" item to Category context menu in companion. (#4360)
- Adds "rename" to the context menu for categories, it uses the
same code path as the default dblClick handler for the base class.

- Added a separator so the context menu looks more like the one
for models

- Some whitespace changes in mdichild.h, my editor truncates
whitespace on blank lines.
2017-02-01 07:35:46 +01:00
Bertrand Songis de49d155c6 [Companion] Compilation fix 2017-01-24 22:06:28 +01:00
Andre BernetandBertrand Songis 7c33043ac0 Force different file name after conversion (#4272)
* Force different file name after conversion

* More detailed instructions
2017-01-22 17:44:55 +01:00
Bertrand SongisandGitHub 285b8786b9 Bsongis/companion warning before automatic conversions (#4271)
* Does this work?

* Warning before automatic conversions
2017-01-22 15:31:22 +01:00
Damjan AdamicandBertrand Songis e59a51e25f Re #4224: Enable reading and writing Models and Settings from/to Horu… (#4254)
* Re #4224: Enable reading and writing Models and Settings from/to Horus radio (SD card)

* Fix for findMassstoragePath() on Windows (which got there in previous commit)
2017-01-19 21:26:18 +01:00
Bertrand Songis 1460620483 [Companion] Rename category function added 2017-01-18 18:43:12 +01:00
Bertrand Songis c707715f3d [Companion] Delete category function added 2017-01-18 16:37:38 +01:00
Bertrand Songis b84398bcc7 [Companion] New fixes:
* New signal MainWindow::FirmwareChanged
* New RadioData conversions introduced
2017-01-18 12:57:01 +01:00
Bertrand Songis 8abc2a7179 [Companion] It's now possible to add Categories 2017-01-18 08:27:17 +01:00
Bertrand SongisandGitHub 61d27ebd75 Bsongis/horus create radiodata from scratch (#4251)
[Companion] It's now possible to add models on an empty EEPROM, save and reload the .otx
2017-01-17 19:41:09 +01:00
Bertrand SongisandGitHub a65aa3d6c7 [Companion] Work in progress - QTreeView in MdiChild (#4197)
[Companion] QTreeView in MdiChild, Horus and X7 support added, fixes for #4224
2017-01-15 17:45:57 +01:00
Bertrand SongisandGitHub ec56d2dbdb [Companion] MdiChild now use a QTreeWidget instead of a QListWidget (… (#4096)
* [Companion] MdiChild now use a QTreeWidget instead of a QListWidget (for Horus compatibility)

* [Companion] Horus models.txt parsing / writing implemented

* Fix for QT53 (#4109)
2016-12-08 21:26:08 +01:00
Bertrand Songis 0ca0785912 [Companion] Another simplification 2016-11-24 07:24:49 +01:00
Bertrand Songis d5e4f7b6e9 [Companion] Unix format used everywhere 2016-11-23 16:42:24 +01:00
Bertrand Songis b0f5b646af [Companion] Copyright added to all files 2016-11-23 16:40:47 +01:00
Bertrand Songis 5f9737fc70 [Companion] Old EEPROM support removed 2016-11-23 16:40:47 +01:00
Damjan AdamicandBertrand Songis 60524f77f0 Projectkk2glider/companion archive support (#4017)
* Files moved to thirdparty directory
* Miniz library added
* Unused simulators removed: er9x, th9x, ersky9x
* Example of opening archive file .eepe2 (File->Open)
* File reorganization, bunch of files moved to storage directory
* Added StorageSdcard class to handle storage for radios that use SD card to store radio settings and models
2016-11-16 13:05:57 +01:00
Damjan Adamic 154572e547 Separate context menu for "General Settings", cosmetics 2015-08-16 09:28:43 +02:00
bsongis 38a639cef6 Refactoring 2014-12-16 21:17:39 +01:00
bsongis 5de6f4dc94 Now we are able to have Model windows with different transmitter types! 2014-04-18 17:34:41 +02:00
Damjan Adamic df954ae483 Fixed many memory leaks 2014-04-14 20:25:17 +02:00
Kjell Kernen 9dfffbf641 Changed logics for opening model edit windows. Double clicking an empty slot always opens wizard. Clicking en existing always opens model edit. By using right click menu either can be specified. 2014-03-03 16:30:01 +01:00
Kjell Kernen 672e5f8088 Wizard fully functional on GUI level. Right click on model slot to test.
No functionality whatsoever on the logical level! Completely harmless to run.
2014-03-02 13:30:08 +01:00
Kjell Kernen e19df39c0e Changing function names to make the code easier to read and understand.
I am looking at simplifying the code for reading and writing firmware. There seems to be a few bugs...
2014-02-15 02:42:48 +01:00