Bojkar\'s dev blog
cze 20
icon1 admin | icon2 flex, pozostaÅ‚e | icon4 06 20th, 2009| icon34 Comments »

Witam wszystkich. Już dawno nie było żadnego wpisu, i pewnie część myślała, że już mój devblog mi się znudził. Nie jest jest to prawdą ponieważ przerwa była wywołana połączeniem kilku czynników: sesja, cranchtime w pracy oraz drużba na weselu. Tak się złożyło, że wszystkie te rzeczy nastąpiły na raz i zjadły mi cały czas (tak to jest jak sie w tydzień zalicza cały semestr na uczelni :) ).
Z programistycznych rzeczy to silnika niestety nie miaÅ‚em jak i kiedy ruszyć ale teraz już mam wiÄ™cej wolnego czasu i przeznacze go na budowÄ™ silnika. Na pierwszy ogieÅ„ idÄ…: dokoÅ„czenie systemu materiałów,  cienie (najprawdopodobniej shadow mapy), woda oraz dodatkowe efekty post-processingowe (DOF, etc). W pracy caÅ‚y czas koÅ„czÄ™ wielki system do obsÅ‚ugi targów, dzisiaj kod przekroczyÅ‚ magicznÄ… granice 1mb :) , ale pocieszajÄ…ce jest to, że duża część modułów jest już zaimplementowana (pliki, wiadomoÅ›ci, itp). Projekt już piszÄ™ ponad miesiÄ…c i przez ten czas muszÄ™ stwierdzić, że flex oraz pureMVC dajÄ… radÄ™, wzorzec MVC bardzo uÅ‚atwie pisanie tak dużych aplikacji. Z ciekawostek, to jeszcze zostaÅ‚em poproszony przez jednego z wykÅ‚adowców o przygotowanie prezentacji na temat podstaw programowania gier na spotkanie mÅ‚odzieży ponadgimnazjalnej na naszej uczelni. Nawet udaÅ‚o mi siÄ™ jakoÅ› tÄ… prezentacje zÅ‚ożyć i wygÅ‚osić, jak uporzÄ…dkuje jÄ… to postaram siÄ™ wystawić jÄ… tutaj. Teraz mam nadzieje, że kolejny wpis bÄ™dzie już “podparty” jakimÅ› ciekawym screenem z silnika.

mar 31
icon1 admin | icon2 flex, projekty | icon4 03 31st, 2009| icon3No Comments »

Witam. Mineło trochę czasu od ostatniego postu z kilku przyczyn: 1) nie zdażyło się nic ciekawego, 2) modny brak czasu, 3) dobra pogoda na pojeżdzenie motocyklem :)

W pracy zaczeliÅ›my dość duży projekt, który bedzie sÅ‚użył do obsÅ‚ugi pewnych eventów. CaÅ‚ość bedzie pisane we flexie + php do połączenie z bazą danych. W projekcie postanowiliÅ›my użyć  “poważnego” frameworka, gdyż mój prosty raczej nie daÅ‚by rady (chodź jego część bÄ™dzie użyta). Do flexa popularne sÄ… 2 framework’i opierajÄ…ce siÄ™ na MVC:  Cairngorm oraz pureMVC. Oba frameworki sÄ… darmowe. My wybraliÅ›my pureMVC ponieważ czÄ™sto byÅ‚ polecanych na różnych poważnych forach, jest portowany na kilka(naÅ›cie) jÄ™zyków (np. c++, java, C#, php, itd.) i nie jest kombajnem do wszystkiego, tylko posiada samÄ… architekturÄ™ do MVC i do tego bardzo maÅ‚o “waży”. Pierwszy dzieÅ„ poszedÅ‚ na walke z nim ale juz z każdym dniej jest przystÄ™pniejszy i Å‚atwiejszy do zrozumienia. Bardzo mi sie podoba, na pewno przyspieszy produkcje systemu oraz uÅ‚atwi późniejszą jego rozbudowÄ™.

Dodatkowo w firmie piszę program do obsługi pracowników oraz zarządzania projektami. Tutaj całość jest pisana w C++, biblioteka wxWidgets (rox!) do GUI oraz mysqlpp do połączenie z bazą danych mySQL, którą również używamy w programie. Program bedzie pomagał logować to co użytkownik robił, ile czasu na to spędził oraz nad czym, dzięki temu bedzie nam łatwiej w przyszlości oceniach czasowo prace, oraz bedziemy mieli lepsze odwzorowanie czasu, który poświeciliśmy danemu zadaniu. Nie długo w tym miejscu umieszcze screen z głównego ekranu programu.

Jeszcze propo wxWidgets przypomniaÅ‚a mi siÄ™ jedna ważna rzecz. JeÅ›li kogoÅ› denerwuje konieczność Å›ciÄ…gania źródeÅ‚ oraz kompilowanie ich (katalog po kompilacji zajmuje okoÅ‚o 1gb!) i zastanawiaÅ‚ siÄ™ dlaczego nie ma gotowych libek mam dla niego rozwiÄ…zanie: wxPack. Jest to “paczka” gotowych libek dla Visual’a oraz mingw, dodatkowo zawiera opcjonalne kontrolki oraz najlepszy darmowy designer do tej bibloteki czyli wxFormBuilder. OczywiÅ›ci wszystko w najowszych stabilnych wersjach i zajmujÄ…ce duzoooo mniej miejsca i czasu niż rÄ™czne kompilowanie tego.

lut 7

Witam ponownie. Dzisiaj w pracy mialem pewien problem z flexem. PotrzebowaÅ‚em znaleÅ›c otwarzacz plyt. Ze znalezieniem ogólnie wszystkich dostÄ™pnych dysków wiÄ™kszego problemu nie ma, jednak flex w  żaden sposób nie zaznacza, który z nich jest otwarzaczem, zwraca tylko tablice dostÄ™pnym dysków. No i tutaj jest przysÅ‚owiowa “buba”. UdaÅ‚o mi siÄ™ trafić na dość “ciekawe” rozwiÄ…zanie a mianowicie próbie zapisania oraz usuniÄ™cia jakiegoÅ› pliku/katalogu na poszczególnych dyskach, które zwróciÅ‚ nam flex. I teraz jeÅ›li nie możemy tego zrobić, jest to prawdopodobnie otwarzacz pÅ‚yt. Trzeba tutaj jednak zaznaczyć, że jesli w odwarzaczu nie znajdujÄ™ siÄ™ jakaÅ› pÅ‚yta to flex nam nie zwróci tego dysku…

var file : File = new File();var drives : Array = File.getRootDirectories();
var cdroms : Array = new Array();

for(var i:int=0; i < drives.length; i++)
{
var file : File = new File();

file = file.resolvePath(drives[i].nativePath + “\\t”);

try
{
file.createDirectory();
file.deleteDirectory();
}
catch (error:IOError)
{
cdroms.push(drives[i]);
}
}

lut 4
Flex
icon1 admin | icon2 flex | icon4 02 4th, 2009| icon3No Comments »

Dzisiaj dla odmiany napisze trochÄ™ o tym czym zajmujÄ™ siÄ™ w pracy. Moim zadaniem jest pisanie mniej lub bardziej praktycznych aplikacji we Flexie. Cóż to jest ten Flex? Flex jest technologia oparta na action script 3.0 sÅ‚użącego do pisania aplikacji RIA (Rich Internet Application). Jest to bardzo ciekawa i wygodna platforma. PiszÄ™ w tym przeważnie panele administracyjne do stron, co jest bardzo wygodne. OczywiÅ›cie panele administracyjne to nie jedyne zastosowanie tej technologi. Aktualnie piszÄ™ (a nawet koÅ„czÄ™) aplikacje software’owÄ… pisanÄ… we flexie, a dokÅ‚adnie w adobe AIR (taka lokalna wersja flex-a). CaÅ‚ość jest pisana we flex builder’ze (jest to po prostu eclipse z odpowiednimi pluginami). IDE jest dość przyjazne dla programistt chodź troszkÄ™ wolne (wiadomo java-a), i posiadajÄ…ce mniej lub wiÄ™cej denerwujÄ…cych błędów, ale za to ma bardzo dobry debuger, który uÅ‚atwia sporo mi życie.

Dzisiaj chciaÅ‚bym konkretnie napisać o pewnej kontrolce, która siÄ™ zwie RichTextEditor. Jak siÄ™ pewnie domyÅ›lacie jest to bardzo fajna kontrolka do tworzenia zformatowanego tekstu. Ma kilka ciekawych opcji jak pogrubanie, kursywa, wyrównanie tekstu, kolorwanie tekstu itp. I do tego kontrolka “wypluwa” zedytowany tekst do…. no wÅ‚aÅ›nie nazwijmy to umowanie “HTML-a”. Dlaczego w cudzysÅ‚owie? Ano wÅ‚asnie, że ten wygenerowany “adobowy” html ma maÅ‚o wspolnego z normalnym html-em. Dodawne jest kilkanacie dziwnych tagów i innych dziwactw. Dziwne jest, ze adobe pozwoliÅ‚o sobie na takie coÅ›, bo po co komu taki kod, które bez obróbki nie możemy wrzucić np. na stronÄ™ www? No i tutaj niestety my musimy nie jako naprawić tÄ… dziure stworzÄ… przez adobe. ZnalazÅ‚em w sieci kilka wyrażeÅ„ regularnych, które “adobowe” tagi zamieniajÄ… na normalne, dopisalem kilka swoich i dziÄ™ki temu teraz mogÄ™ używać tej kontroli i kowertować jej kod html na normalny. Poniżej dla zainteresowanych źródÅ‚o:

Kod zamieniajÄ…cy kod kontrolki na html: http://www.nopaste.pl/9gf

Kod zamieniÄ…cy html na kod kontrolki: http://www.nopaste.pl/9gg