Commit Graph

6894 Commits

Author SHA1 Message Date
Axel Dörfler
5d8680c0bb Added a message to change the selection.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6788 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-28 04:04:47 +00:00
Axel Dörfler
4fa250ba8d Replaced lazy mode text positioning with real code.
Turns out it didn't work with the menu in sticky mode (because of the triggers).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6787 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 22:49:59 +00:00
Axel Dörfler
a7d7e9c80f Added ToDo items to some code I looked at.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6786 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 22:48:32 +00:00
Axel Dörfler
fa78c88efa The attribute editors are now subclassing TypeEditorView which has a
CommitChanges() method. Editors like the MimeTypeEditor will use this
to propagate their current content when the window receives QuitRequested().
Brought the StringEditor to a usable state (note, currently, all attribute
editors can only change what's there; they cannot change the size of the
attribute - this will be fixed at a later point).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6785 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 22:26:37 +00:00
Axel Dörfler
54df6d4d66 Probe() now resolves symlinks, and longer accepts directories. It also
won't try to open the file read-only anymore.
RefsReceived() now opens an alert explaining the reason if Probe() fails.
Slightly changed the about requester.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6784 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 21:45:31 +00:00
Axel Dörfler
f424774990 Now accepts directories, but redirects them to their volume instead; also
adopts the block size from the file system in that case.
Fixed the broken check for a device (would also succeed for other types,
stat.st_mode types cannot just be or'd).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6783 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 21:38:03 +00:00
Axel Dörfler
11d0369852 No longer displays the selection when the file size is 0.
Also fixed a possibly wrong cursor position in that case.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6782 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 21:35:23 +00:00
Axel Dörfler
e27438edba Will now replace the entry_ref name with the volume title if it's a directory
(since only volumes can slip through, not any directory).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6781 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 21:34:11 +00:00
Axel Dörfler
889d692f77 Added some missing consts.
The header will now get the entry_ref from the editor, and not the one
passed to the view (because it may have redirected it).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6780 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 21:32:28 +00:00
Axel Dörfler
41f353fdb0 The ProbeWindow (base class for FileWindow and AttributeWindow) will now
pass B_SIMPLE_DATA messages to the application but relabel them as
B_REFS_RECEIVED first.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6779 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 21:31:07 +00:00
Axel Dörfler
01f3fea56c The DataEditor always starts in the device native block size or 512 for all
other file types, but the block size menu didn't take that into account, it
always showed "512" to be active when started.
Also, if the DataEditor has a block size that is not yet part of the block
size menu, it will be added and made current.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6778 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 20:21:11 +00:00
Axel Dörfler
383a3578d0 Removed debug output.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6777 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 20:19:30 +00:00
Axel Dörfler
8514048790 Added the ability to merge changes. That means undo/redo now have a
handier granularity.
ReplaceChange will now try to merge with the next ReplaceChange if they
are adjacent.
Fixed compilation with tracing enabled.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6776 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 19:57:45 +00:00
Axel Dörfler
768673c687 Changed the default button to remove the attribute, as that's a bit more
convenient and actually shows some trust in the users decision :-)
Also changed the text to make clear that this action is not covered by
the undo functionality.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6775 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 19:02:36 +00:00
Axel Dörfler
fe8682ea45 Implemented the bookmark menu.
Added a possible "block" member for the kMsgPositionUpdate message.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6774 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 18:41:33 +00:00
Axel Dörfler
0a39d7d615 ProbeView accidently didn't listen to kDataViewPreferredSize events.
Implemented the "Fit" font size setting.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6773 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 17:14:53 +00:00
Axel Dörfler
a7511f3654 Implemented changing the block size - that caused several changes to
DataEditor::SetViewSize()/SetViewOffset() because they did not correctly
update some values under certain circumstances.
There is now a kMsgDataEditorParameterChange instead of just ...OffsetChange;
the message will contain information about what has changed exactly.
Added a new kDataViewPreferredSize notifier that indicates a change of
the preferred size of the DataView. The ProbeView now listens to that
instead of knowing when to update the window limits.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6772 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-27 02:51:48 +00:00
Axel Dörfler
def5f759cb Save() actually always displayed an error requester, even if there was no error.
Started working on the block size menu.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6771 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 20:18:33 +00:00
Axel Dörfler
124640857d Now made the kSignature constant accessible in an appropriate way.
Implemented the print view stuff (as borrowed from ShowImage). Not yet tested
because the print_server is funny today over here...


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6770 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 20:09:11 +00:00
Axel Dörfler
aa60f34665 Added the nice "Open File" recent documents menu.
Moved the DiskProbe application signature constant into the DiskProbe.h header file.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6769 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 19:38:14 +00:00
Axel Dörfler
5d9e40fe92 Added missing R5 headers.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6768 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 19:35:02 +00:00
Axel Dörfler
0adaff854a Now checks if there are any outstanding changes in the editor when the
window is closed.
Also, it now reports errors from the save operation if there were any.
Enabled the "Print" and "Page Setup" menu items.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6767 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 19:15:37 +00:00
Axel Dörfler
79681755a6 StateWatcher now only sends the update message if some state actually has changed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6766 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 18:26:50 +00:00
Axel Dörfler
2aa201551a ApplyChanges() didn't always work correctly. Save() could crash with a
wrong index to the fChanges list.
Added the compile time possibility to trace the data editor changes.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6765 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 18:18:28 +00:00
Axel Dörfler
923dddc23d The HeaderView now checks the position before it propagates it for kMsgPositionUpdate.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6764 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 18:16:10 +00:00
Axel Dörfler
a4ce63bfc4 Implemented Save() functionality. ApplyChanges() can now create the editor
version of the file from any state.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6763 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 16:41:09 +00:00
Axel Dörfler
c0ced84a62 The Save/Print menu items of the ProbeView were added too soon, so that
BInvoker::SetTarget() could not work yet (before the view was added to
the window).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6762 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 16:36:08 +00:00
Axel Dörfler
c4473afbd1 Now maintains the state of the "Save" menu item.
It will now call DataEditor::Save() in B_SAVE_REQUESTED, but it doesn't yet
notify the user on errors (other then printing them to stdout).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6761 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 16:33:48 +00:00
Axel Dörfler
c65f61d4ad Added a StateWatcher class that will automatically send notices for
all changed states during the lifetime of the object upon destruction.
Added some comments.
Uncommented the IsModified() method (does not yet work correctly, though).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6760 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 15:18:02 +00:00
Axel Dörfler
35789209bd Removed the MIME type picker from the MimeTypeEditor - it was not yet finished
anyway, and I think it doesn't really belong to this app's realm.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6759 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 13:04:55 +00:00
Rudolf Cornelissen
b3c153d680 narrowed PLL discriminator restrictions, should fix last fuzzy modes
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6757 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 13:02:27 +00:00
Axel Dörfler
6781cbdc9b Removed the "Block/Write" menu item, and introduced new "Save" menu items;
they are not yet working, though.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6756 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 12:54:51 +00:00
Axel Dörfler
c7a76e9f26 Moved the attribute editors into a separate file.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6755 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 12:41:23 +00:00
Stefano Ceccherini
a8c7c591fa from Korli: lib link order reversed to allow finding the symbol launch_media_server in our libmedia.so
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6752 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 08:34:25 +00:00
shatty
f870bff890 fix brain-dead branching
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6751 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 08:22:48 +00:00
shatty
4a673a0246 fix brain-dead branching
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6750 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 08:16:53 +00:00
shatty
d836ffd41a stream-only version of shared seekable/stream implementation
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6749 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 08:12:28 +00:00
shatty
eab11aaaa3 don't call debugger in decode, slightly shorter pretty name
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6748 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 07:54:26 +00:00
Axel Dörfler
707aa753f3 Removed DataEditor::SetToAttribute() method.
DataEditor::InitCheck() is now properly working for all types.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6747 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 05:03:38 +00:00
Axel Dörfler
9993df0f2a Connected the font size menu. "Fit" doesn't work yet, though.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6746 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 04:47:39 +00:00
Axel Dörfler
b607d18b74 Now also send a selection update notice if the contents have changed.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6745 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 04:35:35 +00:00
Axel Dörfler
7e55eac336 Added a simple image/icon view for the attributes.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6744 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 03:53:05 +00:00
Axel Dörfler
609442f8f8 Moved the B_COPY code into a separate function. Implemented B_PASTE.
Now also changes the selection to the cursor position in the hex editor when
you change the first part of the byte.
No need to hold the editor lock for Replace().


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6743 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 02:05:41 +00:00
Axel Dörfler
02f331d59c We no longer need to hold the editor lock for DataEditor::Replace().
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6742 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 02:00:38 +00:00
Axel Dörfler
ee24db11e1 Added some argument bound checks in Replace() and SetViewOffset().
Replace(), Insert(), and Remove() now locks the editor themselves.
ReplaceChange::Normalize() corrected the size for the right reason in a wrong way.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6741 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-26 01:59:42 +00:00
Axel Dörfler
35f497aa98 Now maintains the Selection/Native/Swapped menu items (which contain the
block position where the currently selected bytes would point to).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6740 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-25 17:39:01 +00:00
Axel Dörfler
32d3a4554d Added a method to access DataView's internal buffer.
Implemented editing functionality for both focus types.
Optimized InvalidateRange() if the update spans over the whole view.
Now resets the cursor position/selection when the editor offset changed.
UpdateFromEditor() now takes the range of the size into account.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6739 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-25 17:36:12 +00:00
Axel Dörfler
4897914eca Accidently added only an int32 for the size, not an int64.
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6738 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-25 15:25:07 +00:00
Axel Dörfler
51f0d53048 "int32 * uint32" doesn't give what I wanted (the "previous block" function
was broken).
"Write" had the wrong shortcut (and I already wondered...).
The PositionSlider now correctly disables itself when it's not needed. Added
some nice disabled drawings for the slider bar.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6737 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-25 00:54:39 +00:00
Axel Dörfler
7d7f16ac72 The AttributeWindow has now possibly two editors, one raw editor (the
standard ProbeView), and one type editor. Started to implemented different
type editors, so far we have: BooleanEditor, StringEditor (not yet fully
working), NumberEditor, and MimeTypeEditor (not complete).
Needed to trick quite a bit to get BTabView to do what I want, since we
cannot detach the ProbeView without losing all of its menus.
All editor views share one backend DataEditor object, so everything is
synchronized and updated automatically.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@6736 a95241bf-73f2-0310-859d-f6bbb57e9c96
2004-02-24 17:03:44 +00:00