<html><head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <meta name="theme-color" content="#000000"> <title>Chrisoft::Blog</title> <script type="text/javascript" src="/panel.js"></script> <link rel="stylesheet" type="text/css" href="/common.css"> <link rel="stylesheet" type="text/css" href="/panel.css"> <link rel="stylesheet" type="text/css" href="/theme0a.css" id="theme0a"> <link rel="stylesheet" type="text/css" href="/theme0b.css" id="theme0b"> <link rel="stylesheet" type="text/css" href="/theme1a.css" id="theme1a"> <link rel="stylesheet" type="text/css" href="/theme1b.css" id="theme1b"> <link rel="stylesheet" type="text/css" href="/theme2a.css" id="theme2a"> <link rel="stylesheet" type="text/css" href="/theme2b.css" id="theme2b"> <link rel="stylesheet" type="text/css" href="/theme3a.css" id="theme3a"> <link rel="stylesheet" type="text/css" href="/theme3b.css" id="theme3b"> <link rel="stylesheet" type="text/css" href="/blog/blogext.css"> <script> function ol() { window.onresize=function() { if(window.innerWidth<768) setupevents(); else unsetevents(); } window.onresize(); } function loadTheme(){ var thm=document.cookie.replace(new RegExp("(?:(?:^|.*;\\s*)thm\\s*\\=\\s*([^;]*).*$)|^.*$"),"$1"); if(thm.length<2||'0123z'.indexOf(thm[0])==-1||'abz'.indexOf(thm[1])==-1)thm='zz'; var ent=""; var d=new Date(); if(thm[0]=='z') { var m=d.getMonth()+1; if(m>=3&&m<6)thm='0'+thm[1]; else if(m>=6&&m<9)thm='1'+thm[1]; else if(m>=9&&m<12)thm='2'+thm[1]; else thm='3'+thm[1]; } if(thm[1]=='z') {if(d.getHours()>=18||d.getHours()<6)thm=thm[0]+'b';else thm=thm[0]+'a';} ent=`theme${thm}`; var R=new RegExp('theme[0-4][ab]'); for(var i=0;i<document.styleSheets.length;++i) { if(R.exec(document.styleSheets[i].ownerNode.id)!==null&&document.styleSheets[i].ownerNode.id!=ent) document.styleSheets[i].disabled=true; else document.styleSheets[i].disabled=false; } var thmcolor=""; switch(thm[0]) { case '0':thmcolor=thm[1]=='a'?'#f59dda':'#2f0933';break; case '1':thmcolor=thm[1]=='a'?'#9df59d':'#090933';break; case '2':thmcolor=thm[1]=='a'?'#edb47b':'#1f1205';break; case '3':thmcolor=thm[1]=='a'?'#a0cdfa':'#051933';break; } document.querySelector("meta[name=theme-color]").setAttribute('content',thmcolor); } loadTheme(); </script> </head> <body onload="ol()" style="overflow-x:hidden;"> <div id="panel" class="TText"> <ul id="panellist"> <li><a href="/"><h1>Chrisoft</h1></a></li> <li><a href="/blog"><h2>Blog</h2></a></li> <li><span>Tags filter</span> <ul id="tagslist"> <li id=""><a href="/blog/list/acmicpc">acmicpc</a></li><li id=""><a href="/blog/list/c++">c++</a></li><li id=""><a href="/blog/list/computer-repairing">computer-repairing</a></li><li id=""><a href="/blog/list/contest">contest</a></li><li id=""><a href="/blog/list/daily-life">daily-life</a></li><li id=""><a href="/blog/list/design">design</a></li><li id=""><a class="active" href="/blog/list/devel">devel</a></li><li id=""><a href="/blog/list/device-review">device-review</a></li><li id=""><a href="/blog/list/garbage">garbage</a></li><li id=""><a href="/blog/list/hands-on">hands-on</a></li><li id=""><a href="/blog/list/interactive">interactive</a></li><li id=""><a href="/blog/list/js">js</a></li><li id=""><a href="/blog/list/linux">linux</a></li><li id=""><a href="/blog/list/midi">midi</a></li><li id=""><a href="/blog/list/music">music</a></li><li id=""><a href="/blog/list/opengl">opengl</a></li><li id=""><a href="/blog/list/qmidiplayer">qmidiplayer</a></li><li id=""><a href="/blog/list/qt">qt</a></li><li id=""><a href="/blog/list/random-xp">random-xp</a></li><li id=""><a href="/blog/list/sophistry">sophistry</a></li><li id=""><a href="/blog/list/web">web</a></li><li id=""><a href="/blog/list/webgl">webgl</a></li></ul> </li> </ul> </div> <div id="content"> <div id="postslist"> <div class="block TText" id="" style="display:block;"> <h3 style="line-height:1.5em;"><a id="" href="/blog/post/2018-10-11.html">The stupid blogging system evolved!</a></h3> <br> <div style="display:table;width:100%;table-layout:fixed;"><span class="left" id="">#web #devel #js</span> <span class="right" id="">2018-10-11/2018-10-11</span></div> </div><div class="block TText" id="" style="display:block;"> <h3 style="line-height:1.5em;"><a id="" href="/blog/post/2018-03-17.html">Some rants on SMELT, QMidiPlayer and Virtools</a></h3> <br> <div style="display:table;width:100%;table-layout:fixed;"><span class="left" id="">#devel #qmidiplayer #opengl</span> <span class="right" id="">2018-03-17/2018-10-11</span></div> </div><div class="block TText" id="" style="display:block;"> <h3 style="line-height:1.5em;"><a id="" href="/blog/post/2017-04-11.html">SBS 2.0 is now the default blog browser</a></h3> <br> <div style="display:table;width:100%;table-layout:fixed;"><span class="left" id="">#devel #web</span> <span class="right" id="">2017-04-11/2018-10-11</span></div> </div><div class="block TText" id="" style="display:block;"> <h3 style="line-height:1.5em;"><a id="" href="/blog/post/2016-09-24.html">2-in-1</a></h3> <br> <div style="display:table;width:100%;table-layout:fixed;"><span class="left" id="">#devel #qmidiplayer #c++ #qt</span> <span class="right" id="">2016-09-24/2018-10-11</span></div> </div><div class="block TText" id="" style="display:block;"> <h3 style="line-height:1.5em;"><a id="" href="/blog/post/2016-04-09.html">The MIDI File Format Specification and MIDI Implementation in QMidiPlayer</a></h3> <br> <div style="display:table;width:100%;table-layout:fixed;"><span class="left" id="">#devel #qmidiplayer #midi</span> <span class="right" id="">2016-04-09/2018-10-11</span></div> </div></div> <div id="insanch" style="height:5em;"></div> <div id="footer"> <div id="pagesw" class="TText" style="display:table;width:100%;padding:1em 0;"> <span style="display:table-cell;"><a id="prepage" href="#"><<</a></span> <span style="text-align:center;display:table-cell;" id="page">1/2</span> <span style="text-align:right;display:table-cell;"><a id="nexpage" href="/blog/list/devel/1.html">>></a></span> </div> <div style="text-align:center;" class="TText"> Proudly powered by SSBS <reduced style="font-size:70%;">(the static stupid blogging system)</reduced> 2.5 <br> Content licensed under CC BY-SA 4.0. </div> </div> </div> </body></html>