I would like a checkable checkbox on a parent, with no checkboxes on any of its children. According to my understanding and experience, this is currently not possible.
Just dropping in to add another voice wishing for granular control of checkboxes/checklists!
OmniOutliner provides so much beautiful granular control that the current checkbox implementation feelsā¦out of place.
+1 to the sentiment in this thread, and thank you for the back and forth.
For many of the documents I create, I only need to use checkboxes for a minority of the line items. Itās therefore beneficial for me to be able to have row status OFF by default, and only turn it on for certain rows. Currently, the workaround requires me to turn row status ON by default, and turn it off forāalmostāevery new row I create.
Alternatively, if it were possible to integrate a setting or rule whereby the ārow statusā was assumed based on adjacent rows or inherited by a parent (e.g., if a row is part of an entire nested list, of which all rows have ānoneā for status, assign the newly-created row ānoneā status).
Just a quick āhand in the airā for this feature. What I was looking for was a way to explicitly alter a Style to include/not include checkboxes. So, for example, my document right now needs checkboxes on most Level 3 rows - the ability to automatically apply checkboxes to these and no other Level by default would be a great help.
I agree that it would be useful to be able to remove checkboxes automatically from rows via a style setting. I may have a partial solution tif you are using the pro version. I have written an AppleScript that does the following.
(1) The script checks to see that the OO document has two level styles named āTickList_Tickedā and āTickList_UnTickedā.
(2) It parses each row and if the row has one of these two styles set it looks at the status of the checkbox and applies the correct style, Ticked or UnTicked.
2.1 If the row does not have one of the two styles applied then the checkbox is hidden (row status is set to none)
Do not name any other level styles with a prefix of TickList.
The script is not very fast but quicker than doing it by hand. It is best used by placing it in the OO scripts folder and assigning a button to it. Careful use of fonts and colour goes partway to overcoming the low visibility of the checkboxes.
USE AT YOUR OWN RISK
best wishes
Simon
I have placed the script on this link https://www.dropbox.com/s/gofdswjmlxp2gd6/TickListsV1.scpt?dl=0
The script is listed here but the formatting gets mangled by the forum software.
(*
Version 1 dated 16th Jan 2020
Remove the check boxes from rows that are not styles with a level style
with a name starting with TickList. Next set a style according to the checkbox.
Ā© Simon Knight 2020.
Use at own risk I accept no liability for any problems that are attributed to this script.
Styles in document must include two level styles with a named
TickList_Ticked
TickList_UnTicked
*)
local oneRow
ā set the variable TaskList to refer to the front OO document
set TaskList to front document of application āOmniOutlinerā
ā Check that the document has at least one styles named TickListā¦
ā Calls a handler RequiredStyles
if RequiredStyles(TaskList) then
ādisplay dialog āAll styles are definedā
else
display dialog "This outline does not have the correct named styles to run this script ! " buttons āCancelā default button 1
return ā stops the script
end if
ā Should be good to go.
tell front document of application āOmniOutlinerā
-- TRAP that a brand new document may not have any rows so trap for this condition
-- by creating a blank row if the document has no rows (i.e brand new document) - unlikely
if not (exists (last child of TaskList)) then
tell TaskList
make new row at end of every row
end tell
end if
set StyleTicked to named style ("TickList_Ticked")
set StyleUnTicked to named style ("TickList_UnTicked")
repeat with oneRow in (get every row of TaskList)
set tNameOfLvlStyle to ""
set RowStyle to the style of oneRow
try
set tNameOfLvlStyle to the name of item 1 of the named style of RowStyle
end try
if tNameOfLvlStyle contains "TickList" then
--The row has a checkbox so set the correct style
remove every named style from every named style of style of oneRow
if (state of oneRow is equal to checked) then
add StyleTicked to every named style of style of oneRow
else
add StyleUnTicked to every named style of style of oneRow
end if
else
-- row does not have a style of TickList so switch off the check box
set the state of oneRow to none
end if
end repeat
-- Save the updated oo file
try
save TaskList
on error number errNum from badObj -- time out error handling
end try
end tell
on RequiredStyles(TaskList)
ā declare the variables so that they show in script debugger debug mode
local StyleList, needList, aNamedStyle, NamesofNamedStylesList
tell front document of application "OmniOutliner"
-- define an empty list varible to store a list of the names of the styles in the document
set NamesofNamedStylesList to {}
-- Read the styles into local variable StyleList
-- Note this is not a list of names but of the styles which have properties such as name
set StyleList to the named styles of TaskList
-- populate the list with the names of the named styles
repeat with aNamedStyle in StyleList
copy name of aNamedStyle to end of NamesofNamedStylesList
end repeat
-- List the styles required by the parennt script
set needList to {"TickList_Ticked", "TickList_UnTicked"}
-- Compare the two lists and return
repeat with nStyle in needList
if NamesofNamedStylesList does not contain nStyle then
return false
end if
return true
end repeat
end tell
end RequiredStyles
Just circling back to say that I wound up migrating to OneNote OO never got it together with this feature. OneNote has 99 problems, but checklisting to-do items aināt one.
+1
Basically I like to use a single document with 2 types of sections: tasks and outlines.
I realize I can use the āSet Status to Noneā action, but that gets a bit tedious, as I have to clean up checkboxes after entering rows.
A happy medium would be to just inherit the Row Status when entering a new row. That way I can set up my sections once, and then forget about it.
Hi All, Does anyone know if we can hide, or mask, check boxes within certain cells?
Hi all, Does anyone know if we can hide, or mask, check boxes within certain cells?
Cells? Columns? No. Check boxes apply to the entire row, not the column.
Hi -
I definitely would like checkbox visibility to be assignable as part of a row style as well to make this easier.
I did just want to add that now, on the desktop version at least, you can assign āSet Status -> Noneā to a keyboard command, which is way less fiddly than right click and selecting the menu item.
For such an expensive bit of software, itās remarkable how many OO topics here are answered with, āThat feature doesnāt exist⦠You can hack around it like thisā¦ā, followed by some relatively complex series of steps for users to take.
Please note ā this isnāt to criticise the users posting these workarounds! Just an observation that this app really needs some attention, or a reappraisal in terms of how OO users actually use the software as opposed to how Omni developers imagine people are using it. Some of the design decisions seem wilfully awkward. Iām sure theyāre not intended that way, of course, but I find myself using OO simply because I donāt want to pay for something else, and not because itās actually pleasurable or yielding to what Iād expect an outlining app to be.
I dont get the rpoblem in this thread at all. Could somebody explain what the issue is?
OK say you have an outline and somewhere in that outline you need checkboxes in only some rows. What you have to do is view > show status checkboxes, and EVERY row gets one. Then you would have to select every row except the ones you want and Edit > Set Status to None. That will hide the checkboxes on the rows you donāt want to see any, but whenever a new row is created, it gets a status checkboxā¦
So thatās the problem.
What (I think) most users want, is row level control, so you select the rows you want checkboxes, then in the inspector add them. Rather than a whole of document, all or nothing approach. The current situation degrades the usability of check boxes, I keep hoping row level control will be added but automation seems to be the priority.
Just to add to what @GrantSt said above: Iām in a meeting, taking notes in OO and some of those notes entail actions. I might want to have a checkbox for the action items, but not the remainder of my notes. Or I might be reviewing the notes later on and want to mark some of them as requiring an action by adding a checkbox.
I might also want to filter my notes down to those with a checkbox for reporting or export.
Other outlines support this (Curio and Tinderbox are ones Iām aware of, but there are others).
6 year old thread thoughā¦we live in hope
Thans for explaining. Now I fully understand and Im asking ymself why it is not being implementedā¦