Witam! W końcu, po wielu, wielu miesiącach przemyśleń mogę zaprezentować mój projekt, czyli fast edit! Czym jest fast edit? Fast edit to aplikacja służąca do edycji dokumentów. Otwiera pliki txt, rtf, docx oraz pdf. Jej unikalną funkcją jest możliwość pracy z wieloma dokumentami na raz! W przyszłości plany są większe i obejmują np zapis do chmury, specjalny tryb interakcji z tabelami, czy niewidzialny notes. Co o tym myślicie? Pierwsza wersja jeszcze powinna być dziś.
„Równowaga nie działa w korporacjach. Tam rządzi chaos i budżet.
Teraz troszkę więcej wyjaśnień. Będzie to program tylko i wyłącznie dostępny w formie portable. Niewidzialny notes, to będzie coś, czego nigdy jeszcze nie widziałem, a uważam za ciekawe. Weźmy sobie taką sytuację. Czytamy coś i na zabój musimy coś szypko zapisać. To po co otwierać dodatkowe okienko? Przy użyciu skrótu klawiszowego wejdziemy w interakcję z niewidzialnym polem tekstowym, w którym będzie można pisać i je ukryć też skrótem, czytać dalej, zapisać, etc. Interakcja z tabelą zaś. Mała zżynka z maca, wiem. Ale denerwują mnie wordowskie tabele. Ten tryb będzie pozwalał na wyświetlanie ich w formie excelowatej.
„Równowaga nie działa w korporacjach. Tam rządzi chaos i budżet.
Brzmi ambitnie, przyznam, choćbym miał go nie odpalićwięcej niż 5 testowych razy, ogromny plusior za kreatywnosc.
Sygnaturka.: "That seems to point up a significant difference between Europeans and Americans. A European says: 'I can't understand this, what's wrong with me?' An American says: 'I can't understand this, what's wrong with him?'" TERRY PRATCHETT
Ale interakcje tabelowe i i nvisible notepad to plany na późniejszy termin. Priorytety to. *Opsługa plików txt, rtf, pdf, docx zrealizowana. *Multitasking prawie zrealizowany. *Multiplatforming zrealizowany.
„Równowaga nie działa w korporacjach. Tam rządzi chaos i budżet.
Da się zrobić, dość prosta implementacja w kodzie. Teraz zacząłem myśleć nad jedną sprawą. To nic pewnego jak na razie, ale nie wiem, czy nie rozbuduję programu jeszcze bardziej i nie stanie się on płatny. Cena oczywiście nie jakaś specjalnie wysoka, powiedzmy 50 zł. A co by za to było? *Zapis do chmury. *Interakcja z tabelami. *Invisible notes. *Ocr i konwerter formatówtekstowych. *Edytor pdf. *Accessible frmatting. Dźwiękowe ozajmianie pogrunbień, wcięć, kursyw, przerw, etc, wszystkiego co może się przydać. *Szypki skok do nagłówka, hiperlinków, etc.
„Równowaga nie działa w korporacjach. Tam rządzi chaos i budżet.
Jak dla mnie spoko tylko trzeba by było jakoś to ogarnąć, aby była możliwość kilkudnowego testu przed zakupem, nie jest to wiele, ale zapłacić i nie być zadowolonym z efektów też nie jest coś czego ja oczekuję :)
Znajdź sobie zajęcie, które kochasz, a nie przepracujesz w życiu ani jednego dnia.
Myślę, że więcej od 50 nie wezmę. No i oczywiście, płatne się to stanie, jak opracuję wszystkie te funkcje. Główny modół już wsumie jest praktycznie gotowy, tylko trochę polerki i takich tam drobnostek.
„Równowaga nie działa w korporacjach. Tam rządzi chaos i budżet.
Zaimplementuj odczyt tego .odt, sporo ludzi i firm tego używa, a office tego nie tyka i żeby otworzyć trzeba instalować Libre Office, a tak będzie to zbędne.
Znajdź sobie zajęcie, które kochasz, a nie przepracujesz w życiu ani jednego dnia.
Pates, problem z niewidzialnym notepadem ja sam chciałem rozwiązac tylko że kurde to nie jest takie łatwe jak zapewne Ci się wydaje. Powiem tak, po latach latach uczenia się C, C ++ i programowania jakotakiego może od bidy bym to zrobił ale i tak bez wsparcia chociażby IME chiskiego czy japoskiego
- "Intelligence and wisdom is like jam. The less you have, the harder you're trying to spread it arround." - French proverb
Podałęm IME jako po prostu taki najbardziej oczywisty przykład. no bo jak miałoby to działać programistycznie? Instalacja jakiegoś ekstra niskopoziomowego hooka, na przykład tak (C#)
// Deinicja delegatu
public delegate IntPtr HookProc(int code, IntPtr wParam, IntPtr lParam); // Procedura instalacji hooka private HookProc hookHandler; this.hookHandler = new HookProc(handleHook); public bool registerGlobalHook() { if (globals.hookPointer != IntPtr.Zero || globals.isHookRegistered) { // Coś jest nie tak return false; } using (Process process = Process.GetCurrentProcess()) { using (ProcessModule module = process.MainModule) { IntPtr hModule = NativeDefinitions.GetModuleHandle(module.ModuleName); globals.hookPointer = NativeDefinitions.SetWindowsHookEx(HookType.WH_KEYBOARD_LL, hookHandler, hModule, 0); globals.isHookRegistered = true; return true; } } }
// No i co z tym hookiem? private IntPtr handleHook(int code, IntPtr wParam, IntPtr lParam) { if (wParam == (IntPtr)0x0100) {