Commit Graph
100 Commits
Author SHA1 Message Date
Stefano Ceccherini 9d12401dcf Check keys against "raw_char" instead of "key"
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22512 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-12 09:44:32 +00:00
Stefano Ceccherini cbcae6ef9b StyledEdit didn't print anything if there's only one line (bug #1288).
Note, though, that printing in StyledEdit is still very much broken. 
Often it prints only the current page, for example.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22511 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-12 07:58:33 +00:00
Stefano Ceccherini fc6a714ec0 Static variables should have the s prefix.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22509 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-11 13:43:07 +00:00
Stefano Ceccherini 65e63b987d PaletteConverter now exports a static InitializeDefault() method, which
can be used (and is, by _init_interface_kit()) to initialize the ... 
er... default instance of 
PaletteConverter using the system color map, thus avoid building the 
list of colors, which takes some time. Fixes bug #505.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22508 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-11 13:30:56 +00:00
Stefano Ceccherini 17dee6524b and there, the usual commit which removes the forgotten debug output...
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22490 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-08 21:48:49 +00:00
Stefano Ceccherini c044172704 I was wrong after all. InsertText() doesn't call SetRunArray() (and
hence CancelInputMethod()), but it implements part of it. To avoid code 
duplication, I added a private _SetRunArray() call, which does most of 
the work, except cancelling the input method, and calling Refresh().
Removed some unneeded code from CancelInputMethod(), some small changes 
in HandleInputMethodChanged. 
-Questa linea, e quelle sotto di essa, saranno ignorate--

M    src/kits/interface/TextView.cpp
M    headers/os/interface/TextView.h


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22489 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-08 21:46:35 +00:00
Stefano Ceccherini 6fc1a5d0ea Mail's inherited InsertText() calls CancelInputMethod()
indirectly, and since InsertText() is called inside 
BTextView::HandleInputMethodChanged(), this method would see fInline 
slip away from under its feet.. Now we call the BTextView version 
explicitly. Fixes bug #1022, although I'm not sure if this is completely 
correct.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22444 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-04 19:57:27 +00:00
Stefano Ceccherini 94b9294f48 oops! Somehow I managed to commit a version with some extra debug code
enabled.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22433 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-04 11:37:04 +00:00
Stefano Ceccherini f2476bcc9c Patch by Rene Gollent: TextViews now can scroll even if they aren't
attached to a BScrollView.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22432 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-04 11:32:06 +00:00
Stefano Ceccherini 9c16019f62 Patch by Rene Gollent which fixes displaying of current time. I've used
snprintf instead of sprintf and reduced the size of the char array, 
though. Hope you don't mind, Rene.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22406 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-10-02 09:37:41 +00:00
Stefano Ceccherini e96b202311 Patch from Ioan Molnar:
If a Tab is partially out of the window, clicking on it to make it the 
active tab will scroll it to be completely visible.
The best solution would probably be having a way to scroll through the 
whole list of tabs, or something like this. But for now, at least, makes 
the tabbed terminal a bit more useful.
Thanks!



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22325 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-27 08:26:15 +00:00
Stefano Ceccherini 6d523548f1 Fixed endlines
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22324 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-27 07:55:16 +00:00
Stefano Ceccherini e7b0402927 Finally got rid of the mouse tracking thread. Put the code inside
MouseMoved(). Everything _seems_ to work like it did before, but there 
might be some regressions...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22250 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-18 21:19:54 +00:00
Stefano Ceccherini b86754c363 Simplified a bit some code
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22231 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-13 21:39:02 +00:00
Stefano Ceccherini 3424ff46e9 renamed private members of BPicture to fit our coding guidelines
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22216 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-10 14:55:42 +00:00
Stefano Ceccherini 945d8d11cd Sync the drawing engine state in set_scale. The pen size, for example,
needs to be recalculated when the scale changes.
Also call ResyncDrawingState() in exit_state_change(). This fixes the 
pen size test in FlattenTestPicture.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22215 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-10 11:56:28 +00:00
Stefano Ceccherini b1af0a7a24 Setting the font shear in a BPicture didn't work, because the value was
treated as uint32 in some places, when it's a float.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22214 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-10 10:20:26 +00:00
Stefano Ceccherini af02a9a71c Use DrawState::PenSize() to set the drawing engine pen size, since it
returns the scaled value.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22213 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-10 09:43:02 +00:00
Stefano Ceccherini ecef598e73 Added a window creation speed test. Can test empty windows or windows
with BBoxes within.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22165 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-04 14:10:40 +00:00
Stefano Ceccherini b33a19a278 Adjusted a bit BTextView::AutoResize() so that the text rect is more
centered. At least renaming a file in tracker looks a bit better now.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22139 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-09-01 14:51:51 +00:00
Stefano Ceccherini e94ad1e24d If typing is hidden, don't reply to B_COPY or B_CUT messages, but beep()
in this case. Note that the public methods still let you copy and cut 
the real text. Also prevented stealing passwords via scripting (not 
tested, though). Fixes bug #1354
Got rid of the _BTextGapBuffer_::[] operator since using it creates less readable code.
Also Implemented _BTextGapBuffer_::RealText() and used it instead of Text() inside BTextView. Will make sense later.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22129 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-31 07:39:18 +00:00
Stefano Ceccherini 6a9c969bcc If line breaks have changed, don't take the startOffset into account. Fixes bug #1430
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22095 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-28 15:13:55 +00:00
Stefano Ceccherini 40056ffaaf Removed CURON/CUROFF constants. Use a boolean instead.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22042 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-22 20:29:40 +00:00
Stefano Ceccherini 1aa5b467f2 Reverted FPS.cpp to previous version, as Michael's request
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22014 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-20 12:07:13 +00:00
Stefano Ceccherini be98a6028d Some style cleanups by Fredrik Ekdahl. Thanks!
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22013 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-19 20:14:48 +00:00
Stefano Ceccherini 0e5fe45f13 Removed unused DataBuffer class
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22012 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-19 19:59:09 +00:00
Stefano Ceccherini 8906492142 Removed debug leftover
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21998 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-17 09:57:28 +00:00
Stefano Ceccherini f3342f281b The Shell destructor was never called. Calling it showed that
the PtyReader thread in TermParse hanged in read(). There's even a 
comment in there (by Axel) that read() is never interrupted. Switched to 
kill_thread() in TermParse::StopPtyReader() until this problem is fixed. 
At least we don't leave running apps around anymore. :)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21997 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-17 09:54:32 +00:00
Stefano Ceccherini 22e16ac590 call RemoveSelf() on the replicant before deleting them. Fixes bug #1405
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21996 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-17 08:51:39 +00:00
Stefano Ceccherini 8b63673c13 Also use _GetPreferredFonts() in the other place when we read the fonts
from the preferences


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21985 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-16 15:36:42 +00:00
Stefano Ceccherini e7f9f277ef Use a try { } catch block in TermWindow::_AddTab(). Note that this
doesn't fix bug #1392, since TermView::_InitObject() use std::nothrow 
for allocations. Added TermWindow::_GetPreferredFonts() and moved some 
code in there.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21984 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-16 15:32:09 +00:00
Stefano Ceccherini 422fadc829 Moved the dummy table local to the PicturePlayer::Play() function since,
as Marcus pointed out, having it outside wasn't thread safe. Moved 
PicturePlayer into the BPrivate namespace.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21982 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-16 14:40:03 +00:00
Stefano Ceccherini 0f8ae3ead7 Creating a new tab made the app crash since r21979. Use "Terminal" as
tab label instead of "scrollView". Setting Terminal to fullscreen also 
resizes and moves the TermView a bit.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21981 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-16 14:17:19 +00:00
Stefano Ceccherini b438035431 Removed leak
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21980 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-16 13:17:00 +00:00
Stefano Ceccherini bb4632f1ec Stolen Ingo's Arguments class from Miniterminal and used it in place of
GPL'd code in TermApp (slightly modified, and bugfixed, even :P).
TermView now accepts an argument vector instead of a commandline. Same 
thing for Shell.
Temporarily(?) removed some commandline options.
This also fixes bug #1396 (tested)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21979 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-16 13:11:00 +00:00
Stefano Ceccherini bd14785126 Debug was enabled by default.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21973 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-16 09:14:50 +00:00
Stefano Ceccherini 46b4e48998 Added some debug output to PicturePlayer. Since checking the table size for every op is very slow, now we do that only at the beginning, and use a custom op table if needed. The best case (which is the one used when drawing a picture with BView::DrawPicture()) is very fast since it only requires one check.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21972 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-16 09:14:03 +00:00
Stefano Ceccherini 253d42a602 Implemented SetClipping op, but it's not working yet (looks like it's
never written into the data stream)


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21947 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-14 15:21:15 +00:00
Stefano Ceccherini d2d3fb8472 Removed a no longer true TODO
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21944 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-14 12:46:33 +00:00
Stefano Ceccherini 796e4e4552 Implement calling the exit_xxx hooks. Thanks to Marc Flerackers for the
help.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21943 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-14 12:45:42 +00:00
Stefano Ceccherini 9cc1cb3cae Disabled writing the font shear, since this results in missing font in
Chart's BPictureButton. Needs some investigation.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21942 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-14 09:43:19 +00:00
Stefano Ceccherini feb557a6d1 Implemented WriteSetFontFamily() and WriteSetFontStyle(). Only the
server side functions are missing.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21941 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-14 09:17:21 +00:00
Stefano Ceccherini 2f99607b77 My last commit broke setting fonts in BPictures. Added a comment in
PicturePlayer to explain what we need to do. Don't write the 
B_PIC_ENTER_STATE_CHANGE and B_PIC_ENTER_FONT_STATE ops until we fix the 
problem (we don't care about them in our server side 
implementation anyway). Font changes and state syncing work again.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21940 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-14 08:40:13 +00:00
Stefano Ceccherini c00e6e3f89 Implement more bpicture font methods, now PicturePlayer checks the size
of the function table, so if someone passes a smaller table, we avoid
 
calling invalid pointers.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21939 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-14 08:05:05 +00:00
Stefano Ceccherini 8e503a70c8 Also set the font properties for BPictures. Some of them, at least.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21938 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-14 07:37:51 +00:00
Stefano Ceccherini 37033892c5 Implemented SetPattern op. Reduced the buffer size to 4096 again.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21937 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-14 06:39:37 +00:00
Stefano Ceccherini 4d47fee5cd Renamed some BPicture private functions, small cleanups.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21927 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-13 15:28:31 +00:00
Stefano Ceccherini 38daa5cd6e Also upload/download subpictures
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21926 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-13 14:52:02 +00:00
Stefano Ceccherini 690c7474a4 Implemented BPicture's SetPenLocation() op, also nested
AppendToPicture() (but still doesn't work :( ). Moved some functions 
around in PictureDataWriter.h.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21925 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-13 14:07:12 +00:00
Stefano Ceccherini b1b69140a1 Don't delete the subpictures in the ServerPicture destructor. They are
kept in a list by ServerApp, and deleted by its destructor.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21924 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-13 13:52:16 +00:00
Stefano Ceccherini 277571370c AppendToPicture() now sets the correct picture to be returned from
EndPicture() (tests have confirmed this). Although appending to a 
picture doens't work yet for some reason...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21923 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-13 13:09:59 +00:00
Stefano Ceccherini edac8f06a8 Implemented drawing of pictures inside pictures. Thanks to Marc
Flerackers for clarifying some things.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21920 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-13 09:19:30 +00:00
Stefano Ceccherini ac5fdd8a6d Fixed drawing of arc and ellipse in a BPicture.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21919 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-13 07:38:44 +00:00
Stefano Ceccherini ed5de868df Implemented the following BPicture ops: fill region, stroke/fill arc,
stroke/fill polygon, stroke/fill bezier. some work towards drawing of 
nested pictures.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21918 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-13 07:20:43 +00:00
Stefano Ceccherini db5b3a0249 TermWindow didn't set the colors correctly on Terminals in a new tab.
Now TermWindow::_SetTermColors() accepts a pointer to a TermView to fix 
that.
Spotted by Andrea Bernardi. Thanks! 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21870 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-09 10:35:08 +00:00
Stefano Ceccherini 98eadf4b9d Scrolling didn't work correctly if the user didn't move the mouse all
the time. Fixed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21868 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-09 09:38:19 +00:00
Stefano Ceccherini d6f28abebe Added a popup menu to the tabview: for now it only contains a "close
tab" item. Note that you can also close the tab by clicking on it with 
the tertiary mouse button. Renamed some methods of TermWindow.
I'm not really happy with this code (tab creation/deletion code is 
spread between TermWindow and SmartTabView), I will need to come up with 
something better.
There are still some visual glitches when tabs are switched, created or 
deleted.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21850 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-08 09:50:01 +00:00
Stefano Ceccherini e9d1494da3 Nevermind Stephan, in the end I found it out. Fixed shape drawing inside
a BPicture, though I'm not yet sure if I should do it there on when 
playing the picture...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21836 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-06 11:55:29 +00:00
Stefano Ceccherini 1f8ea6a98d Set the origin before playing the picture, so DrawPicture() with an
offset works correctly. Drawing a BShape using a BPicture is currently 
broken. Stephan, any insight on what it's changed about shape drawing ?


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21835 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-06 11:41:18 +00:00
Stefano Ceccherini 187453512d If there's only one tab, quit the window when TermView::NotifyQuit() is
called.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21824 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-04 14:35:38 +00:00
Stefano Ceccherini 2671c0bf0a Since AS_DRAW_STRING doesn't attach the escapement delta anymore,
drawing a string inside a picture and then playing that picture 
triggered a debugger call. Fixed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21823 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-04 14:34:47 +00:00
Stefano Ceccherini 1820113ead removed old comments
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21814 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-03 20:50:41 +00:00
Stefano Ceccherini 18f004cc71 Made some TermView functions (Paste, Copy, etc) public. Made
SetTitle and NotifyQuit virtual. TermWindow now uses a TermView 
subclass which closes the tab on NotifyQuit. Enabled tabbed 
terminal. There are still some small glitches, most probably related
 to BTabView bugs ?



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21813 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-03 20:41:04 +00:00
Stefano Ceccherini ce10f265de In case the user supplied a wrong commandline, the Terminal didn't launch
the shell as the code would seem to do. I've disabled showing the Alert, 
since system() doesn't return the return value of "alert".


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21809 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-03 10:47:27 +00:00
Stefano Ceccherini 2b87a97ac6 Attach/DetachShell are now private. Added a new TermView constructor
which only specifies the rows and columns, view size is automatically 
calculated, and used it in TermWindow. Added a TermView::SetTitle() 
method, thus TermParse doesn't call Window() anymore. Some cleanups, 
scrollbar was off by one.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21808 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-03 09:59:30 +00:00
Stefano Ceccherini 678f903e20 Implemented tabbed terminal (with a couple of bad hacks which will go
away soon, hopefully). The menuitem to open a new tab is still 
disabled, until I figure out how to catch the exit signal... HELP ? 
Plus there are still a couple of visual issues, but AFAICT without tabs 
the Terminal appearance should be the same as it was before, so no one 
should complain.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21790 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-02 13:17:23 +00:00
Stefano Ceccherini bba01ef7c1 Try to have a really smart tab view... It won't show any tabs when
there's only one view attached.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21785 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-08-02 06:44:34 +00:00
Stefano Ceccherini d7b25be846 cleaned up a bit thread creation and deletion
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21762 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-31 12:53:16 +00:00
Stefano Ceccherini cfc9ef8ac3 Implemented B_ABOUT_REQUESTED in TermView, for the replicant version.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21752 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-30 15:22:37 +00:00
Stefano Ceccherini 67188b4ca2 More or less reverted TermView::KeyDown() to r21695. Fixes bug #1340.
Thanks to Ingo & Korli for the help.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21751 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-30 15:05:04 +00:00
Stefano Ceccherini 60be800755 Added a wrapper method to instantiate_object(), where we catch any
possible exception thrown from the constructor called by the function 
itself, for safety. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21750 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-30 14:21:41 +00:00
Stefano Ceccherini 685271a77a Better error messages
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21749 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-30 12:56:22 +00:00
Stefano Ceccherini 9821c5c4e1 on MouseDown(), TermView becomes the focus view (like BTextView does).
Now input works also with a replicanted Terminal, although I have to 
click on it twice(!?!?). Don't call exit_thread() anymore in 
TermParse::PtyReader(). Hope this is correct. (feel free to beat me on 
this).


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21747 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-30 12:19:20 +00:00
Stefano Ceccherini 2240e7df9b Add the add_on field in TermView::Archive(). This way instantiating a
replicant works (thank you Marc). Return errno instead of the return 
value of read() (thank you Jerome).
Terminal now can be instantiated as a replicant, although input doesn't 
work :((.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21745 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-30 11:48:35 +00:00
Stefano Ceccherini 948b80756a Initialize the string, so we don't get garbage in case of problems in
getting the name.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21744 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-30 10:26:24 +00:00
Stefano Ceccherini ba40a9b6a7 Added a TermView::NotifyQuit() method, used in TermParse, so it doesn't
mess with be_app anymore. Renamed TermView private methods to have an 
underscore prefix.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21743 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-30 09:59:17 +00:00
Stefano Ceccherini 53763c54d1 Don't use exceptions in TermView constructor, as it would cause problems
with instantiation. Note that if an error occurs in the constructor, 
we're pretty much screwed. Made some TermView functions private. Some 
small cleanup, and some WIP code.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21742 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-30 08:59:12 +00:00
Stefano Ceccherini 69adf535c1 TermView and the classes used by it now don't know about PrefHandler
anymore, but have methods to set the needed options. Various cleanups.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21728 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-28 14:49:39 +00:00
Stefano Ceccherini a77bd4200b Implemented Archive() and unarchiving constructor. TermView won't work
as a replicant, though, until I remove the preference code from it.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21725 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-27 21:56:47 +00:00
Stefano Ceccherini cd2b8867e1 Removed weird code in TermWindow::WindowActivated. Added basic
Archive(), Instantiate(), and unarchiving constructor.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21724 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-27 21:43:24 +00:00
Stefano Ceccherini 258e949475 More work towards a tabbed terminal. Actually it already somewhat works
(code not enabled, though). Moved scripting from TermWindow to 
TermView. Added a SmartTabView which (for now) only resizes the 
child views to fit their size. Usual cleanups.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21723 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-27 21:23:32 +00:00
Stefano Ceccherini 17dfb8b1cb More headers cleanup
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21706 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-26 15:22:21 +00:00
Stefano Ceccherini b10dd441dd Fixed warnings, rearranged some headers.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21705 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-26 15:07:16 +00:00
Stefano Ceccherini feaebcb571 Encoding is now a property of TermView. Changed a lot of code to fix the
problems caused by this change. MakeEncodingMenu doesn't mark the 
current encoding anymore, it was already done in TermWindow::MenusBeginning().
Removed custom enums for encodings, just use the ones provided in UTF8.h.
I'm more and more convinced we should drop the custom conversion routines
and use the system ones.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21704 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-26 14:52:24 +00:00
Stefano Ceccherini f14a8c5801 Removed more unused stuff. Cleanups.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21700 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-25 11:31:17 +00:00
Stefano Ceccherini d75fc05829 Had switched rows and columns in SetTermSize() call inside TermView's
constructor. Made UpdateSIGWINCH() private and renamed it to 
_UpdateSIGWINCH().


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21699 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-25 10:16:18 +00:00
Stefano Ceccherini 702e4be807 Moved all TermView initializing code into TermView itself. Before you
couldn't just rely on its constructor to fully initialize the object, 
since the code was scattered around, mostly into TermWindow. Added a 
commented out TermWindow constructor which only creates and adds a 
TermView object to the view hierarchy, which now works.
Removed weird TermWindowActivate method, use WindowActivated 
instead. TermApp can now keep a pointer to a BWindow instead of 
TermWindow, since it doesn't do anything special with it. 
TermView::SetTermFont() now can filter the font attributes (it uses 
B_FIXED_SPACING, I'm not sure it's needed but it doesn't hurt). Usual 
cleanups.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21698 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-25 09:50:34 +00:00
Stefano Ceccherini abc4720231 Moved cursor blinking functionality from TermParse into TermView (and
from a BMessageRunner into Pulse()). Removed more unused stuff. 
Moved around some constants and definitions. Many style changes. Sorry, 
I know the two should be separated, but I had already done so many changes...


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21695 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-24 12:18:24 +00:00
Stefano Ceccherini 6fbf283fb5 Fixed a bug where Terminal couldn't set itself to fullscreen the first
time. Some minor cleanups.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21681 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-22 13:26:17 +00:00
Stefano Ceccherini ac3a8f5446 Made all CodeConv methods static, since there was no point for them to
be nonstatic. Moved TermParse under Shell, Removed some parameters 
passing around from TermWindow/TermView/TermParse. Now TermParse threads are 
started when the shell is attached to a TermView. Might still be 
improved.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21680 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-21 20:50:06 +00:00
Stefano Ceccherini 0ed5650b01 Got rid of TermBaseView
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21679 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-21 19:56:55 +00:00
Stefano Ceccherini 90c6c3e8a4 Sorry, the previous commit also contained broken WIP stuff.
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21678 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-21 19:22:53 +00:00
Stefano Ceccherini 0d32d905e9 Minor cleanup, Updated some copyrights
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21677 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-21 19:11:41 +00:00
Stefano Ceccherini e68a9aeca5 return errno when open() fails
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21634 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-17 11:46:47 +00:00
Stefano Ceccherini 892bf0d5fd fixed a warning
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21633 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-17 09:50:06 +00:00
Stefano Ceccherini 894e5a26d3 Renamed a variable to fit our guidelines. Removed typedef
from UTF8WidthTbl.c. Use typedef from SupportDefs.h instead


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21632 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-17 09:42:34 +00:00
Stefano Ceccherini 12999e13de Removed unused files
git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21631 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-17 09:19:02 +00:00
Stefano Ceccherini dc25fe8173 Got rid of gTermPref by adding some static methods to PrefHandler.
The font size menu wasn't up to date with the current settings. Fixed.


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21630 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-17 09:14:44 +00:00
Stefano Ceccherini 37b209af04 Renamed spawn.cpp/h to Shell.cpp/h and updated the other source files to
take this change into account


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21629 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-17 08:04:36 +00:00
Stefano Ceccherini f3d05c8b3a Encapsulated low level terminal stuff into a Shell class, which also
supersedes spawn_shell(). Removed window parameter from TermParse. Since 
we already have a pointer to the view, we just call Window() on it (only 
used in one place, no need to save a pointer). Other cleanups. 


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@21628 a95241bf-73f2-0310-859d-f6bbb57e9c96
2007-07-17 07:58:37 +00:00