teepee has quit [Remote host closed the connection]
aiyion has quit [Read error: Connection reset by peer]
aiyion has joined #openscad
teepee has joined #openscad
qeed_ has joined #openscad
qeed has quit [Ping timeout: 268 seconds]
teepee has quit [Remote host closed the connection]
teepee has joined #openscad
guerd871 is now known as guerd
<ali1234>
i just read all the way through the roof and o_e issues and i think i'm going to put a note on the wiki that o_e is not actually available but roof does mostly the same sort of thing
<J1A84961>
at least with a difference and scale
<ali1234>
done
<ali1234>
now i need to figure out how to use it
<dalias>
will there be a tagged version anytime soon?
<dalias>
my distro still doesn't have a version with roof packaged and i pestered them about being outdated a while back, but it turns out there actually isn't any tagged version to update to
<ali1234>
tagged versions seem to be pretty rare
<dalias>
:/
<ali1234>
there is both flatpak and snap though, and i think an appimage too
<ali1234>
huh... roof and offset can produce some pretty wild things, this is cool
<dalias>
yes, i really want roof :)
<dalias>
most dead simple stupid deficiency it fills: chamfers
<dalias>
no manually defining complex 3d geometry because you want to chamfer an extruded 2d profile
<dalias>
also various kinds of raised and inset lettering, molds, ..
<dalias>
and yes if you use some steps with offset you also get arbitrary-step-division fillets too
ur5us has joined #openscad
<J1A84961>
there are still some issues with roof when you use offsets ($fn=>40).
<J1A84961>
it is like finding the magic number for every design and as soon you change a bit in size you need a different magic №
<ali1234>
hmm... a bit janky but it seems to work in render
<peepsalot>
bleh, just realized my changes seffault upon undocking console. i was wondering if that would work correctly... need a good way to get the appropriate MainWindow object from within Console class
<peepsalot>
segfault
<teepee>
peepsalot: it should be fine to just pass that to the constructor
<teepee>
actually mainwindow is the parent anyway I would think
teepee has quit [Remote host closed the connection]
TheAssassin has quit [Remote host closed the connection]
TheAssassin has joined #openscad
teepee has joined #openscad
<teepee>
ah, no, the ConsoleDoch has it as parent
fling has quit [Remote host closed the connection]
fling has joined #openscad
jonasbits has joined #openscad
qeed has joined #openscad
qeed_ has quit [Ping timeout: 268 seconds]
<peepsalot>
yeah passing into constructor sounds like the most sensible thing
<peepsalot>
or... how do you do that through .ui ?
<peepsalot>
Qt confounds me again
jonasbits has quit [Ping timeout: 268 seconds]
fling has quit [Remote host closed the connection]
fling has joined #openscad
<teepee>
I think that was somehow possible in the designer, worst case a setter in setupUI should work too. IIRC that's always called by the generated UI stuff
jonasbits has joined #openscad
<InPhase>
peepsalot: Perhaps if you're having a lifetime issue, add some custom slots and signals and connect them up in whatever function constructs both. Those will auto clean-up.
<InPhase>
One can architect around them otherwise, but this can be a minimum change approach.
<peepsalot>
not sure i would call it a lifetime issue. i was using QWidget::window() to get the window and dynamic_cast that to MainWindow, but i guess the window for the widget changes when its undocked.
<InPhase>
I see.
<InPhase>
Well then it would also keep the slot connection on a reparent, if you can stuff it into that paradigm.
<peepsalot>
i wonder if the parent widget hierarchy stays intact during undocking? i could loop over widget->parent until i find one that can be cast to MainWindow
<peepsalot>
InPhase: for the case of Console, i'm overriding virtual focusInEvent from QPlainTextEdit, so its not really a signal/slot connection
<peepsalot>
i don't really know how events relate to signals/slots
<teepee>
we already track the active main window, but I don't remember the details, maybe there's a way to hook into that
<peepsalot>
teepee: I think setupUi is the generated function from .ui files. so i don't know how to call a setter there.
<peepsalot>
TabManager tracks which editor is active on its own, but that's wholly separate from Console
<peepsalot>
its crazy to me that initializing a widget with an extra parameter is nearly impossible if creator is used.
<peepsalot>
or designer/whatever its called
<teepee>
yeah, maybe they expect properties to be used
<peepsalot>
i am trying repeated parent checks until I get to a MainWindow, seems to work ok when undocking
<peepsalot>
clicking the menu Edit->Copy doesn't work when undocked, since the focus goes to the main window, and apparently automatically to the editor from there
<peepsalot>
but trying that is a stretch anyways
<peepsalot>
shortcuts work fine in docked or undocked, and the menu action works across both as long as Console is docked
<InPhase>
peepsalot: Yeah, I had meant that, e.g., inside of your override of focusInEvent, you would emit a custom signal added to the derived class, which you pre-connect to a custom slot at the recipient, thus eliminating the need to hunt for it dynamically.
<InPhase>
peepsalot: So not replacing that virtual function, but altering how it behaves. (If I was understanding your architecture. I didn't check the PR yet.)
<InPhase>
peepsalot: Although working is working if you got it. You can decide if your working solution is solid enough. :)
<peepsalot>
InPhase: what do you mean pre-connect? doesn't the sender have to exist in order to connect it?
<InPhase>
When it's constructed.
<InPhase>
The console always exists, right?
<InPhase>
I assume it has a single construction path.
<peepsalot>
InPhase: Console is constructed in generated ui_ code
<peepsalot>
but also multiple MainWindows with their own Console can exist
TheAssassin has quit [Remote host closed the connection]