Bug 119991 - FILESAVE DOCX The Tristate property of the check box is incorrectly saved
Summary: FILESAVE DOCX The Tristate property of the check box is incorrectly saved
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
6.0.0.0.alpha0+
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard: target:6.3.0
Keywords: bibisected, bisected, difficultyBeginner, easyHack, filter:docx, skillCpp
Depends on:
Blocks: DOCX-ActiveX-Legacy
  Show dependency treegraph
 
Reported: 2018-09-19 17:31 UTC by Gabor Kelemen (allotropia)
Modified: 2018-11-22 09:03 UTC (History)
6 users (show)

See Also:
Crash report or crash signature:


Attachments
Example ODT file from Writer with a check box. (9.23 KB, application/vnd.oasis.opendocument.text)
2018-09-19 17:31 UTC, Gabor Kelemen (allotropia)
Details
Example DOCX file from Writer with a check box. (14.98 KB, application/vnd.openxmlformats-officedocument.wordprocessingml.document)
2018-09-19 17:32 UTC, Gabor Kelemen (allotropia)
Details
Screenshot of the original and exported document side by side in Writer. (139.98 KB, image/png)
2018-09-19 17:32 UTC, Gabor Kelemen (allotropia)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Gabor Kelemen (allotropia) 2018-09-19 17:31:45 UTC
Created attachment 145038 [details]
Example ODT file from Writer with a check box.

The Tristate property of the check box form control is incorrectly saved in DOCX document.

Steps to reproduce:

    1. Create a new document in LibreOffice Writer..
    2. On the Form tab, click Design Mode.
    3. Insert a check box.
    4. Right-click the control, and click Control Properties.
    5. Set the Tristate property: Yes.
    6. Save the file as DOCX.
    7. Select File and Reload.
    8. Right-click the control, and click Control Properties.

Actual results:
The value of the Tristate property is No.

Expected results:
The Tristate property shouldn’t change.


LibreOffice details:
Version: 6.2.0.0.alpha0+
Build ID: efe119aaa50e9f532b3fac1ef153469c80f24b80
CPU threads: 4; OS: Windows 6.1; UI render: default; 
TinderBox: Win-x86@42, Branch:master, Time: 2018-09-10_00:02:50
Locale: en-US (hu_HU); Calc: threaded
Comment 1 Gabor Kelemen (allotropia) 2018-09-19 17:32:02 UTC
Created attachment 145039 [details]
Example DOCX file from Writer with a check box.
Comment 2 Gabor Kelemen (allotropia) 2018-09-19 17:32:21 UTC
Created attachment 145040 [details]
Screenshot of the original and exported document side by side in Writer.
Comment 3 raal 2018-09-20 06:46:42 UTC
Confirm. Version: 6.2.0.0.alpha0+
Build ID: a27ae800fed5a974c9b255f7ce2b38ec2dbaa426
CPU threads: 4; OS: Windows 6.1; UI render: default;
Comment 4 Xisco Faulí 2018-10-04 15:42:55 UTC
The export feature was implemented in

author	Tamás Zolnai <tamas.zolnai@collabora.com>	2017-08-17 21:47:22 +0200
committer	Tamás Zolnai <tamas.zolnai@collabora.com>	2017-08-17 23:11:15 +0200
commit c0cc02e2934aeb12dda44818955e5964496c186a (patch)
tree 16f450bbe38e14d336bdbac3220b642b9a302a87
parent 8c0cc5cd7befffc6e8e6361ba67807a799cc997f (diff)
tdf#50097: DOCX: export form controls as MSO ActiveX controls

@Tamás Zolnai, I thought you could be interested in this issue...
Comment 5 Tamás Zolnai 2018-10-13 13:01:45 UTC
Let's turn this into a easy hack. The code is here:
oox/source/ole/axcontrol.cxx
Check AxCheckBoxModel class.

Some additional info here:
https://bugs.documentfoundation.org/show_bug.cgi?id=113789#c4

Also might need to check the activex documentation:
https://msdn.microsoft.com/en-us/library/office/cc313125(v=office.12).aspx
Comment 6 Commit Notification 2018-11-22 09:01:28 UTC
Martin van Zijl committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/+/a995d10e27149dc701d7f6fa093545888b5250f5%5E%21

tdf#119991 save checkbox tristate in oox format

It will be available in 6.3.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.