klange changed the topic of #osdev to: Operating System Development || Don't ask to ask---just ask! || For 3+ LoC, use a pastebin (for example https://gist.github.com/) || Stats + Old logs: http://osdev-logs.qzx.com New Logs: https://libera.irclog.whitequark.org/osdev || Visit https://wiki.osdev.org and https://forum.osdev.org || Books: https://wiki.osdev.org/Books
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 272 seconds]
heat has quit [Ping timeout: 246 seconds]
MiningMarsh has quit [Quit: ZNC 1.9.1 - https://znc.in]
MiningMarsh has joined #osdev
hwpplayer1 has quit [Remote host closed the connection]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 255 seconds]
hwpplayer1 has joined #osdev
agent31475 has quit [Ping timeout: 255 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 276 seconds]
hwpplayer1 has quit [Remote host closed the connection]
ramenu_ has quit [Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in]
hwpplayer1 has joined #osdev
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 260 seconds]
vai has joined #osdev
<vai> hi
Matt|home has joined #osdev
hwpplayer1 has quit [Read error: Connection reset by peer]
hwpplayer1 has joined #osdev
simjnd has joined #osdev
mrkajetanp has joined #osdev
vdamewood has joined #osdev
mrkajetanp has quit [Ping timeout: 255 seconds]
terrorjack4 has quit [Quit: The Lounge - https://thelounge.chat]
terrorjack4 has joined #osdev
mrkajetanp has joined #osdev
qubasa has quit [Ping timeout: 246 seconds]
mrkajetanp has quit [Ping timeout: 272 seconds]
qubasa has joined #osdev
simjnd has quit [Ping timeout: 248 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 246 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 248 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 260 seconds]
mrkajetanp has joined #osdev
eck has quit [Quit: PIRCH98:WIN 95/98/WIN NT:1.0 (build 1.0.1.1190)]
eck has joined #osdev
MiningMarsh has quit [Quit: ZNC 1.9.1 - https://znc.in]
m3a has quit [Quit: leaving]
m3a has joined #osdev
MiningMarsh has joined #osdev
mrkajetanp has quit [Remote host closed the connection]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 246 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 248 seconds]
mrkajetanp has joined #osdev
hwpplayer1 has quit [Remote host closed the connection]
chiselfuse has quit [Remote host closed the connection]
mrkajetanp has quit [Ping timeout: 276 seconds]
chiselfuse has joined #osdev
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 260 seconds]
mrkajetanp has joined #osdev
Vercas9 has quit [Quit: Ping timeout (120 seconds)]
mrkajetanp has quit [Ping timeout: 252 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 248 seconds]
steelswords has quit [Read error: Connection reset by peer]
mrkajetanp has joined #osdev
steelswords has joined #osdev
mrkajetanp has quit [Ping timeout: 255 seconds]
mrkajetanp has joined #osdev
GeDaMo has joined #osdev
mrkajetanp has quit [Ping timeout: 246 seconds]
MiningMarsh has quit [Quit: ZNC 1.9.1 - https://znc.in]
MiningMarsh has joined #osdev
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 265 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 244 seconds]
mrkajetanp has joined #osdev
X-Scale has quit [Quit: Client closed]
mrkajetanp has quit [Remote host closed the connection]
mrkajetanp has joined #osdev
MiningMarsh has quit [Quit: ZNC 1.9.1 - https://znc.in]
mrkajetanp has quit [Ping timeout: 252 seconds]
mrkajetanp has joined #osdev
MiningMarsh has joined #osdev
steelswords has quit [Read error: Connection reset by peer]
antranigv_ is now known as antranigv
mrkajetanp has quit [Ping timeout: 246 seconds]
xenos1984 has quit [Read error: Connection reset by peer]
steelswords has joined #osdev
mrkajetanp has joined #osdev
truebad0ur has quit [Read error: Connection reset by peer]
xenos1984 has joined #osdev
truebad0ur has joined #osdev
mrkajetanp has quit [Ping timeout: 260 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 252 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 260 seconds]
the_oz has quit [Remote host closed the connection]
mrkajetanp has joined #osdev
the_oz has joined #osdev
steelswords has quit [Read error: Connection reset by peer]
mrkajetanp has quit [Ping timeout: 272 seconds]
steelswords has joined #osdev
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 260 seconds]
craigo has joined #osdev
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 272 seconds]
the_oz has quit [Quit: Leaving]
chiselfuse has quit [Remote host closed the connection]
gildasio has quit [Remote host closed the connection]
foudfou has quit [Remote host closed the connection]
gildasio has joined #osdev
foudfou has joined #osdev
chiselfuse has joined #osdev
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 252 seconds]
X-Scale has joined #osdev
Left_Turn has joined #osdev
Turn_Left has joined #osdev
Left_Turn has quit [Ping timeout: 252 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 248 seconds]
Matt|home has quit [Quit: Science is the tool we use to rise above ourselves.]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 272 seconds]
ramenu has joined #osdev
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 252 seconds]
pabs3 has quit [Quit: Don't rest until all the world is paved in moss and greenery.]
pabs3 has joined #osdev
\Test_User has quit [Quit: e]
\Test_User has joined #osdev
mrkajetanp has joined #osdev
steelswords has quit [Read error: Connection reset by peer]
mrkajetanp has quit [Ping timeout: 260 seconds]
steelswords has joined #osdev
gog has joined #osdev
Turn_Left has quit [Ping timeout: 248 seconds]
pog has joined #osdev
gog has quit [Read error: Connection reset by peer]
zhiayang has quit [Quit: oof.]
kl1n3 has joined #osdev
zhiayang has joined #osdev
kline has quit [Read error: Connection reset by peer]
Turn_Left has joined #osdev
mrkajetanp has joined #osdev
Turn_Left has quit [Remote host closed the connection]
Left_Turn has joined #osdev
mrkajetanp has quit [Ping timeout: 248 seconds]
goliath has joined #osdev
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 272 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 260 seconds]
asarandi has quit [Quit: WeeChat 4.2.2]
asarandi has joined #osdev
kwak has joined #osdev
mrkajetanp has joined #osdev
<kwak> Can someone please help me with a bit of superficial logic in regards to GUI programming? I'm creating an IDE GUI in HTML5 and would like to to know how GUI logic usually works in operating systems. Specifically, I'm wondering what kind of references that are contained within GUI menus (window/start/context menus etc.) in order for a system to be able to identify what a selection is pointing to.
<kwak> So in a hypothetical scenario where an OS renders a menu with selections, how does the system know what option 1, 2 and 3 respectively are pointing to? Might there be a list of strings somewhere that indicates what each option would want to execute?
<kwak> I understand that an operating system is many times more compelx than my use case, so I'm really just trying to discern some kind of simplified abstraction.
mrkajetanp has quit [Ping timeout: 276 seconds]
<zid`> You need a lookup from x,y to struct widget *
<kazinsal> There are layers
<zid`> you could use a hash, or a spatial tree, a silly linear search, whatever you like
<kazinsal> When your mouse button clicks messages get sent up each layer until it gets to the top most layer and gets directed back down to the layer tha handles the most relevant bit
<kazinsal> Interfaces are a mess
<zid`> widgets also tend to be heirarchical themselves which may also be leveraged
<kazinsal> Learn to love the pain
<zid`> i.e if I want to click the '=' button on calculator, on my 2nd desktop. I only need to find out which desktop was clicked, which outer-window on that desktop was clicked, and which button on that one window was clicked
mxs has joined #osdev
<kof673> > a list of strings somewhere that indicates what each option would want to execute i think they are asking what happens after you click...a function is called?
<kazinsal> that's the kind of question I ask people when I'm interviewing them
mrkajetanp has joined #osdev
<kazinsal> literally last time I did an interview of some fresh grads my biggest question was "you type google.com into your browser and hit enter, what happens to get packets from your computer to google and back"
X-Scale has quit [Quit: Ping timeout (120 seconds)]
<kazinsal> I no longer do such kinds of interviews on account of being in a very different position with very different public and union mandated hiring requirements
<kazinsal> but at the time I was always proud of being able to choose the right people who could understand the various layers involved in networking
<kazinsal> with the implicit knowledge that based on their understanding, they could apply that to troubleshooting and development
<kazinsal> I know at least one of the people I hired a few years back became a good apprentice replacement for my position when I left my last job, even though I kinda fucked him on a few jobs on my way out
<kazinsal> just knowing how he answered those kinds of questions on his way in was a good signifier that he could adapt well
<kazinsal> if someone can break down a high level event into lower level events and back up again, even in the abstract, they have the kind of layered understanding of how things work that you want them on your team
mrkajetanp has quit [Ping timeout: 272 seconds]
mrkajetanp has joined #osdev
<kof673> sure, but i think they just meant "function pointer" > what kind of references
<kwak> kof673 / kazinsal / zid`: Yeah sorry if I'm having a hard time asking my question the right way. I've already got the rendering and clicking down, but I can't figure out the best way to store and use references to what the different options are supposed to execute.
<kof673> :)
<zid`> 'options'?
<kwak> Like for example, I can generate a menu called "File" which folds out the options "New", "Open" and "Save. And I can handle what happens when a file is created, opened or saved. But I would like to know the optimal way to connect menu items to these functions.
<zid`> Anyway, most widget toolkits work via message passing
<kwak> "Save"*
<zid`> Each widget supplies a callback function when they are registered
<zid`> which recieves the message, "you were clicked", etc
<kazinsal> I'm the kind of dork who works from a perspective of "asynchronous message comes in, how does it get passed down to kernel mode and back"
<kwak> I could stupidly check for the contents of the menu item text to see if the text reads "New", "Open" or "Save", or I could have a list of commands somewhere which correspond with the order of the menu items.
<zid`> and on windows at least, if you don't want to do anything special with the message, you just pass it along to DefWindowProc() and that does the 'normal' things a widget does
<kwak> The latter is what I've been doing so far.
<kazinsal> We've spent quadrillions of cycles making basic UI stuff a non problem
<zid`> struct widget w; w.callback = save_menu_widget(); w.text = "Save"; RegisterWidget(MENU_ENTRY, parent_menu, w);
<zid`> or whatever
<kazinsal> Which makes trying to encapsulate the "best" way to do a GUI hard
<zid`> err first () are wrong
<kwak> kazinsal: Well I can rephrase maybe. If I was to have a list of commands (strings) that correspond with the order of a list of menu items, so that if you click Item #1 under the menu "File", then it would run command #1 from a list called File. Would that be a stupid way of doing it?
mrkajetanp has quit [Ping timeout: 244 seconds]
<zid`> I already explained how it's normally done
<zid`> either do it that way, or do it otherwise, it's up to you
<bslsk05> ​learn.microsoft.com: Using Menus - Win32 apps | Microsoft Learn
<kazinsal> That's mildly past my usual level of layer seven
<kazinsal> If you asked me to recreate a circa 1984 Advanced Gateway Server I could do so
<kwak> Ah I see.
<kazinsal> If you asked me to recreate a circa 1993 Windows NT desktop environment I'd be stammering and looking for the nearest fire exit
<kwak> :D
<kazinsal> I can answer most basic questions about the low and mid level stuff works for a message-passing UI happens
<kazinsal> But at the most coherent base level I'm more of a "how do we take this processor and shove as many packets through it as possible" guy, with the happenstance that I've also studied the NT environment a bunch
mrkajetanp has joined #osdev
<zid`> I believe *specifically* for menus, windows is awkward and actually deals in strings and a generic handler for *every* menu
<zid`> but for everything else, it's a callback per widget
<zid`> ah no, it's an int at least
kwak has quit [Ping timeout: 248 seconds]
mrkajetanp has quit [Ping timeout: 246 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 272 seconds]
steelswords has quit [Read error: Connection reset by peer]
steelswords has joined #osdev
xenos1984 has quit [Quit: Leaving.]
vinleod has joined #osdev
vai has quit [Remote host closed the connection]
vdamewood is now known as Guest5734
Guest5734 has quit [Killed (osmium.libera.chat (Nickname regained by services))]
vinleod is now known as vdamewood
op has joined #osdev
Turn_Left has joined #osdev
mrkajetanp has joined #osdev
Left_Turn has quit [Ping timeout: 248 seconds]
mrkajetanp has quit [Ping timeout: 255 seconds]
pog is now known as gog
Left_Turn has joined #osdev
mrkajetanp has joined #osdev
Turn_Left has quit [Ping timeout: 265 seconds]
Turn_Left has joined #osdev
mrkajetanp has quit [Ping timeout: 260 seconds]
Left_Turn has quit [Ping timeout: 246 seconds]
Left_Turn has joined #osdev
Turn_Left has quit [Ping timeout: 244 seconds]
op has quit [Remote host closed the connection]
mrkajetanp has joined #osdev
op has joined #osdev
mrkajetanp has quit [Ping timeout: 252 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 248 seconds]
gog has quit [Quit: byee]
gog has joined #osdev
mrkajetanp has joined #osdev
Turn_Left has joined #osdev
mrkajetanp has quit [Ping timeout: 244 seconds]
steelswords has quit [Read error: Connection reset by peer]
Left_Turn has quit [Ping timeout: 248 seconds]
steelswords has joined #osdev
Bonstra has quit [Quit: Pouf c'est tout !]
Bonstra has joined #osdev
steelswords has quit [Read error: Connection reset by peer]
steelswords has joined #osdev
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 255 seconds]
mrkajetanp has joined #osdev
op has quit [Remote host closed the connection]
mrkajetanp has quit [Ping timeout: 260 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 260 seconds]
dgz has joined #osdev
steelswords has quit [Read error: Connection reset by peer]
Arthuria has joined #osdev
Arthuria has quit [Killed (NickServ (GHOST command used by Guest684531))]
Arthuria has joined #osdev
steelswords has joined #osdev
dgz has quit [Ping timeout: 260 seconds]
npc has joined #osdev
cxnnr has joined #osdev
cxnnr has quit [Remote host closed the connection]
<nikolar> KERNAL
mrkajetanp has joined #osdev
agent31475 has joined #osdev
mrkajetanp has quit [Ping timeout: 252 seconds]
vdamewood has quit [Quit: Life beckons]
Dead_Bush_Sanpai has joined #osdev
Dead_Bush_Sanpai has quit [Client Quit]
Dead_Bush_Sanpai has joined #osdev
pounce has quit [Remote host closed the connection]
mrkajetanp has joined #osdev
<mcrod> purple
mrkajetanp has quit [Ping timeout: 260 seconds]
craigo has quit [Ping timeout: 248 seconds]
Dead_Bush_Sanpai has quit [Quit: Dead_Bush_Sanpai]
mrkajetanp has joined #osdev
levitating has joined #osdev
mrkajetanp has quit [Ping timeout: 252 seconds]
levitating_ has joined #osdev
the_oz has joined #osdev
levitating has quit [Ping timeout: 272 seconds]
mrkajetanp has joined #osdev
Dead_Bush_Sanpai has joined #osdev
mrkajetanp has quit [Ping timeout: 272 seconds]
npc has quit [Remote host closed the connection]
mrkajetanp has joined #osdev
levitating_ has quit [Ping timeout: 272 seconds]
mrkajetanp has quit [Ping timeout: 265 seconds]
pounce has joined #osdev
Arthuria has quit [Killed (NickServ (GHOST command used by Guest684531))]
Arthuria has joined #osdev
Arthuria has quit [Ping timeout: 276 seconds]
Arthuria has joined #osdev
mrkajetanp has joined #osdev
Arthuria has quit [Killed (NickServ (GHOST command used by Guest684531))]
Arthuria has joined #osdev
mrkajetanp has quit [Ping timeout: 252 seconds]
levitating_ has joined #osdev
mrkajetanp has joined #osdev
X-Scale has joined #osdev
xenos1984 has joined #osdev
levitating_ has quit [Ping timeout: 255 seconds]
mrkajetanp has quit [Ping timeout: 276 seconds]
mrkajetanp has joined #osdev
steelswords has quit [Read error: Connection reset by peer]
mrkajetanp has quit [Ping timeout: 246 seconds]
steelswords has joined #osdev
mrkajetanp has joined #osdev
Left_Turn has joined #osdev
Turn_Left has quit [Ping timeout: 244 seconds]
mrkajetanp has quit [Ping timeout: 252 seconds]
mrkajetanp has joined #osdev
cxnnr has joined #osdev
Turn_Left has joined #osdev
cxnnr has left #osdev [#osdev]
cxnnr has joined #osdev
Left_Turn has quit [Ping timeout: 272 seconds]
cxnnr has left #osdev [#osdev]
netbsduser has joined #osdev
mrkajetanp has quit [Remote host closed the connection]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 252 seconds]
GeDaMo has quit [Quit: 0wt 0f v0w3ls.]
mrkajetanp has joined #osdev
Arthuria has quit [Ping timeout: 252 seconds]
mrkajetanp has quit [Ping timeout: 252 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 272 seconds]
steelswords has quit [Read error: Connection reset by peer]
steelswords has joined #osdev
Arthuria has joined #osdev
agent314759 has joined #osdev
agent31475 has quit [Read error: Connection reset by peer]
agent314759 is now known as agent31475
levitating_ has joined #osdev
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 246 seconds]
cow321 has quit [Remote host closed the connection]
cow321 has joined #osdev
youcai has quit [Ping timeout: 265 seconds]
youcai has joined #osdev
heat has joined #osdev
<heat> KERNAL
<heat> finally home
<adder> where ya been
mrkajetanp has joined #osdev
<heat> algarve
<heat> if i see another lads holiday i'll fucking lose it
<heat> overall pretty nice though
cxnnr has joined #osdev
karenw has joined #osdev
<adder> cool, welcome back
levitating_ has quit [Read error: Connection reset by peer]
levitating_ has joined #osdev
mrkajetanp has quit [Ping timeout: 248 seconds]
cxnnr has quit [Client Quit]
mavhq has quit [Ping timeout: 244 seconds]
mrkajetanp has joined #osdev
netbsduser has quit [Ping timeout: 248 seconds]
mavhq has joined #osdev
mrkajetanp has quit [Ping timeout: 246 seconds]
Dead_Bush_Sanpai has quit [Quit: Dead_Bush_Sanpai]
goliath has quit [Quit: SIGSEGV]
Dead_Bush_Sanpai has joined #osdev
Turn_Left has quit [Ping timeout: 248 seconds]
mrkajetanp has joined #osdev
levitating_ is now known as levitating
mrkajetanp has quit [Remote host closed the connection]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 276 seconds]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 246 seconds]
Turn_Left has joined #osdev
Turn_Left has quit [Read error: Connection reset by peer]
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 252 seconds]
levitating has quit [Remote host closed the connection]
levitating has joined #osdev
mrkajetanp has joined #osdev
mrkajetanp has quit [Ping timeout: 255 seconds]