the RTF::Worker for this task (TextOutput).
Cleaned the sources a bit, TextOutput now also contains the functionality
of the former AppServerConnection class.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10569 a95241bf-73f2-0310-859d-f6bbb57e9c96
maintained, and should work more or less correctly.
Monospaced fonts can now be chosen (the font table is partially parsed),
italics works, and many other things.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10567 a95241bf-73f2-0310-859d-f6bbb57e9c96
Text::Parse() now converts bigger chunks at once.
Default RTF element destination is visible in text now, only known
other destinations are marked that way (using a lookup table).
Added virtual method IsDefinitionDelimiter() to Element to make
definition iterating nicer.
";" now always forms a separated Text object - this fixes the
definition handling.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10565 a95241bf-73f2-0310-859d-f6bbb57e9c96
functions from the former RTFElement (now RTF::Element).
Put the parsing basics into a separate class RTF::Parser (used to be in
the static RTFHeader::Parse()).
RTF::Header is now always correctly set to RTF::TEXT_DESTINATION.
Some minor other related changes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10563 a95241bf-73f2-0310-859d-f6bbb57e9c96
It only supports colors and bold fonts beside plain ASCII text, but it's a
start.
The RTF* class hierarchy should get a cleanup, though (and will soon).
You'll need Haiku's StyledEdit to make use of this translator.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10562 a95241bf-73f2-0310-859d-f6bbb57e9c96
This fixes a bug in Diskprobe, thanks to Axel for reporting.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10543 a95241bf-73f2-0310-859d-f6bbb57e9c96
Interface statistics are now maintained.
If I did not forget anything the core stack is now feature-complete.
Only ppp_up must be finished, bugs and hacks found, and modem support added; that's it for R1, I hope.
Everyting untested!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10541 a95241bf-73f2-0310-859d-f6bbb57e9c96
part of Canna Input Method addon
from Nec Corporation, modified by T.Murai
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10527 a95241bf-73f2-0310-859d-f6bbb57e9c96
lib/* and rk/* are from Nec Corporation, modified by T.Murai
CannaIM addon from M.Kawamura
Tested on R5, data files are needed
Thanks to M.Kawamura and T.Murai for donation
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10525 a95241bf-73f2-0310-859d-f6bbb57e9c96
quit_all_windows(). I've also implemented the file panel quit mechanism,
but I'm not sure it's correctly done yet.
The BApplication destructor now locks the looper. Added commented out
deletion of fServerTo port and a ToDo comment if this should be done.
Run() no longer checks fMsgPort somewhere, but fInitError at the beginning;
if a missing fMsgPort doesn't set this, I guess InitData() is broken (or
better, BRoster::Private::CompleteRegistration() is). It now also deletes
any fPulseRunner (could be moved to ~BApplication, though).
QuitRequested() now correctly calls quit_all_windows().
Added a question to Quit() about the usefulness of special casing calling
the function from another thread.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10500 a95241bf-73f2-0310-859d-f6bbb57e9c96
to InitData(). Also fixed the initial value of fPulseRate (was 500000 but
according to the BeBook, it should have been 0).
Implemented SetPulseRate() (untested, but should be okay).
Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10499 a95241bf-73f2-0310-859d-f6bbb57e9c96
- DispatchMessage() would swallow all handled messages, no matter if they were
intended for this handler.
- B_REFS_RECEIVED does now maintain the recent folder/document lists.
- Now calls Pulse() when a B_PULSE is received.
- No longer calls ReadyToRun() more than once, no matter how many B_READY_TO_RUN
are sent to the app.
- Added B_APP_ACTIVATED to the yet unhandled messages; furthermore, the known
unhandled messages now dump themselves to stdout.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10494 a95241bf-73f2-0310-859d-f6bbb57e9c96
still lacking some way of getting/setting hostname in our kernel
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10484 a95241bf-73f2-0310-859d-f6bbb57e9c96
The definition of BEOS_R5_COMPATIBLE is no longer necessary, due to improvements
to our build system.
For root directories, the attributes are now taken from that directory; previously,
only the device was tested for attributes (which doesn't have any in BeOS).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10483 a95241bf-73f2-0310-859d-f6bbb57e9c96
to have access to the attributes of a root directory. Internally, only
this ref is used when accessing attribute data.
Also fixed an initialization bug in case the stream couldn't be properly
opened; some values were just set too late (could lead to strange things
as well as a crash).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10481 a95241bf-73f2-0310-859d-f6bbb57e9c96
Also enabled global 3D engine initialisation code, as my cards tested stay in fully working order with it (rest will be tested as well before any new driver release of course).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10477 a95241bf-73f2-0310-859d-f6bbb57e9c96
for RefsReceived().
Probe() now accepts a BEntry instead of an entry_ref, and all entries, too;
unacceptable nodes should be sorted out before.
RefsReceived() now sorts out BDirectories and will open one alert for
all directories, no longer one for each.
Added temporary hidden feature: pressing shift when opening a file will
make it possible to open symlinks and directories (to be able to access
their attributes).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10473 a95241bf-73f2-0310-859d-f6bbb57e9c96
can now also open directories and symlinks, in which case nothing can be
done (but theoretically, the attributes could be changed).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10472 a95241bf-73f2-0310-859d-f6bbb57e9c96
mouse is tracked when you're dragging over the view, and the affected area
is selected.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10470 a95241bf-73f2-0310-859d-f6bbb57e9c96
DiskProbe window only. Only ASCII clippings will contain "text/plain" data,
so don't be surprised if Tracker sometimes doesn't create a clipping file
(if you drop on Tracker).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10465 a95241bf-73f2-0310-859d-f6bbb57e9c96
deletion: you just couldn't delete over a ' ' with backspace...
Merged B_BACKSPACE and B_DELETE handling again.
Applied suggestions made by Stefano, like using ByteAt(x) over Text()[x].
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10464 a95241bf-73f2-0310-859d-f6bbb57e9c96
modules to use their module name directly.
Also introduced a whole range of reserved syscall functions in case we want
to add some more.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10458 a95241bf-73f2-0310-859d-f6bbb57e9c96
It is run once at system startup after app_server and co are running.
Its job is to make sure the system clock took daily saving time into account.
To do this, it compares DST from a config file with DST from current RTC info.
If they differ, a time-updated alert is showed to let the user choose what to do.
A system call was used on R5 to get the current RTC info.
Unless someone comes with a good reason to still use a syscall, it should stay as is.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10455 a95241bf-73f2-0310-859d-f6bbb57e9c96
this during runtime to add and remove specific syscalls. You can also use this
to add debugging or temporary kernel calls without messing up the syscall
table (the syscall numbers will stay constant).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10452 a95241bf-73f2-0310-859d-f6bbb57e9c96
Renamed find_reserved_region() to find_reserved_area(), and
find_and_insert_region_slot() to find_and_insert_area_slot().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10446 a95241bf-73f2-0310-859d-f6bbb57e9c96
It's a bit hackish due to the iospace area, and it also might not work
perfectly in all situations, but it does fulfill the current needs.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10445 a95241bf-73f2-0310-859d-f6bbb57e9c96
cache_node_{opened|closed}() now correctly get the file_cache_ref from a vm_cache_ref.
Implemented cache_prefetch(): for now, it always prefetches the first 64 kB from the file.
Renamed read_from_cache() to read_into_cache().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10438 a95241bf-73f2-0310-859d-f6bbb57e9c96
different types to vnodes.
Renamed vfs_get_vnode() to vfs_lookup_vnode() as it doesn't grab a ref to the node.
Added new vfs_get_vnode() that actually grabs such a ref.
vfs_get_vnode_cache() now fills a vm_cache_ref instead of a void pointer.
Replaced SYS_MAX_NAME_LEN constants with the B_FILE_NAME_LENGTH that should have
been used there.
vnode::cache should have been a vm_cache_ref and is now.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10431 a95241bf-73f2-0310-859d-f6bbb57e9c96
name is now always prepended.
Now prepends a "name=" infront of the query predicate in case BQuery::Fetch()
returned B_BAD_VALUE, so we accept things like "query foo" just like Be's
version.
Also improved the usage text information.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10408 a95241bf-73f2-0310-859d-f6bbb57e9c96
Implemented BQuery::Rewind() - there is no reason not to do this, as the
kernel has no extra work because of this.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10400 a95241bf-73f2-0310-859d-f6bbb57e9c96
Later on (but before R1), we should find a better balance between what
the FS has to implement, and what the kernel delivers to them.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10399 a95241bf-73f2-0310-859d-f6bbb57e9c96
implementation that the two public functions call.
Adapted to the changes to _kern_open_query().
Minor cleanup.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10398 a95241bf-73f2-0310-859d-f6bbb57e9c96
weird stuff - and libbe.so; it now uses the attribute functions
as exported by libroot.so :)
Improved handling of boolean values, improved error messages a lot.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10374 a95241bf-73f2-0310-859d-f6bbb57e9c96
file descriptor, not from/to the attribute...
Added ToDo comment about eventually adding syscalls for these functions.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10373 a95241bf-73f2-0310-859d-f6bbb57e9c96
No longer locks the file during attribute retrieval.
No longer needs libbe.so.
Added support for some additional types.
Will no longer try to read in a 4GB attribute - at max, it will read
64 kB from an attribute. Also changed output style of the raw data
type - please contact me if you desperately think we should revert
that back (ie. in case the old output was actually of use for something).
As the original author suggested, we're now using isgraph() to improve
the character preview of the raw data.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10371 a95241bf-73f2-0310-859d-f6bbb57e9c96
fd_and_path_to_vnode() now accepts NULL as path argument.
Added some more debug output and comments.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10368 a95241bf-73f2-0310-859d-f6bbb57e9c96
unprintable characters, but replaces them with '.'; when there is more
than one unprintable character in the type code, it will show the hexcode
instead.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10367 a95241bf-73f2-0310-859d-f6bbb57e9c96
Added +1 to the pen position to draw text more correctly.
Thanks to Andrew for reporting
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10366 a95241bf-73f2-0310-859d-f6bbb57e9c96
Now understands a lot more types than before.
Accepts "--help" and "-h" on the command line to print out usage info.
Prints out how many bytes the attributes add up to.
Instead of printing out the hex value, the attribute type is now
printed as %c%c%c%c 4-character tupel.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10363 a95241bf-73f2-0310-859d-f6bbb57e9c96
only regular files were stripped back when bfs_close() was called.
Now, we don't preallocate any blocks for attributes, attribute directories,
and symbolic links (which do have a stream when longer than 144 bytes).
Also, bfs_release_vnode() now trims back all streams that need to be
trimmed - this catches standard directories, which could also slip through
before.
Removed the remaining blocks of INODE_NO_CACHE support as this is not
needed for Haiku.
Added method Inode::NeedsTrimming() that determines if its data stream
can be trimmed (indices are never trimmed to reduce fragmentation).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10356 a95241bf-73f2-0310-859d-f6bbb57e9c96
on AMD and other CPUs - thanks to BiPolar for reporting this!
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10354 a95241bf-73f2-0310-859d-f6bbb57e9c96
If the view was resized when there was a selection, the selection disappeared. Fixed.
Added some more documentation and some more comments. Improved comments.
Removed some debug output.
Improved some code here and there.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10353 a95241bf-73f2-0310-859d-f6bbb57e9c96
experienced this problem, but others have). Original changes by Axel,
though edited quite a bit by myself.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10337 a95241bf-73f2-0310-859d-f6bbb57e9c96
Also fixed a minor bug in dec_vnode_ref_count(): the unusued vnode counter
was not decremented again when one vnode was removed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10336 a95241bf-73f2-0310-859d-f6bbb57e9c96
more than once, the size requested was only correct for the first time.
Added preliminary support for cache modules.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10335 a95241bf-73f2-0310-859d-f6bbb57e9c96
For Intel CPUs, the cache code 0x40 is now handled manually, as it changes
its meaning depending on the cpu type.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10333 a95241bf-73f2-0310-859d-f6bbb57e9c96
it's only reserved but not defined or used for those.
If you have a stupid BIOS, the name string might not have been set; this
is now supported, and the standard vendor string is used in that case.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10332 a95241bf-73f2-0310-859d-f6bbb57e9c96
The processor signature now correctly handles the extended family/model fields.
The cpuid 0x80000001 field is actually the same as cpuid_info::eax_1, so
dumping it now behaves in the same way, too.
Added printing of Transmeta specific features.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10331 a95241bf-73f2-0310-859d-f6bbb57e9c96
the 0x80000001 generation/model/stepping was displayed incorrectly.
Only the new features in cpuid 0x80000001 are printed, added support for
No-Execute ("NX") and Long Mode ("64").
Improved non-Intel TLB display, added page sizes, 2nd level cache is now
also displayed correctly (unlike the BeOS version which has a wrong
associativity).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10330 a95241bf-73f2-0310-859d-f6bbb57e9c96
information is also visually more appealing.
It now also uses the private/shared/cpu_type.h header to get the CPU string.
Determining the availability of the extended cpuid info was broken - whoever
had problems with the previous "change_extended = 1" should test again, thanks.
Cleaned up.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10322 a95241bf-73f2-0310-859d-f6bbb57e9c96
actually fills a cpuid_info structure. Renamed cpuid() to get_current_cpuid().
Added syscall _user_get_cpuid().
Added a lot of other vendor brand strings. The cpu_type and cpu_revision
fields should now be correctly set.
get_cpuid() now returns B_BAD_VALUE if the cpuNum parameter is out of bounds
(ie. higher than the number of available CPUs in the system).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10321 a95241bf-73f2-0310-859d-f6bbb57e9c96
implementation by a syscall. Moved cpuid.S to src/kernel/core/arch/x86.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10318 a95241bf-73f2-0310-859d-f6bbb57e9c96
limit, but this is not yet enforced. Added getter functions.
team_init() now returns a status_t.
System info stuff is now globally initialized in main().
get_system_info() now also reports the number of used pages, and calls the
architecture dependent function.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10315 a95241bf-73f2-0310-859d-f6bbb57e9c96
added get_cpuid() function (does not respect the cpu parameter yet).
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10314 a95241bf-73f2-0310-859d-f6bbb57e9c96