6102 Commits

Author SHA1 Message Date
Rene Gollent
e33233713a Fix Web+ debug build. 2013-04-21 14:11:52 -04:00
Rene Gollent
d519acd691 Some refactoring of Settings classes.
- Rename the current RangeSetting -> BoundedSetting and add an
  appropriate setting type enum, since that one actually describes
  a single value clamped to a range, rather than an actual range.

- Add RangeSetting class that has both a lower/upper bound and a pair
  of values representing the lower and upper ends of the range currently
  selected.
2013-04-21 12:01:17 -04:00
Rene Gollent
758a63dc70 Implement ranged container hooks in ArrayValueNode. 2013-04-21 11:46:12 -04:00
Rene Gollent
7d151f694c Extend ValueNode API.
- Add several new optional hook functions to ValueNode. These
  allow implementing subclasses to specify that they're a container
  type that can export a range of items (i.e. arrays, lists, etc.),
  and expose several operations on said ranges of child items.
2013-04-21 11:46:12 -04:00
Siarzhuk Zharski
bf88d81ea6 Fix GB18030 encoding support. And some cleanup ...
* Fix GB18030 Chinese encoding support for two and four bytes long
  characters. This finally resolves issue described in #6227;
* Processing of multi-byte characters was slightly refactored too;
* Remove the multi-byte 94/96 graphsets designation support for
  Japanese encodings. That looks like MuTerm rudiment, it had incomplete
  implementation and looked like abandoned. On the other hand multi-byte
  designation must be implemented in the same way as designation for
  single-byte graphsets was done. Note that this multi-byte graphsets
  designation has nothing to do with the normal encoding support for
  usual data flow conversion - so you will be on the safe side when
  use terminal encoding menu switch.
  The removed feature is the ancient technique to achieve different charsets
  support on 8-bit serial lines by assigning (designating) predefined
  sets of characters to G0, G1, G2 and G3 and selecting them during
  program life-time into GL (x20-x07E) or GR (xA0-xFF) areas by using LS
  or SS functions.
  For example xterm has no support for designation multi-byte graphsets
  at all. Anyway if this feature is required and you can provide the
  test environment - please let me know and I will be glad to implement
  this feature in more easy and consistent way;
* Remove unreferenced gSmbcsTable and gScsTable parsing tables that
  looks like is not used anymore;
* Remove gCS96GroundTable and gMbcsTable parsing tables that were used
  by multi-byte 94/96 Japanese graphsets support and now obsoleted by
  removing mentioned feature;
* Remove some obsoleted #defines, like HW statusline support for
  example, from parse tables definition.
2013-04-20 16:51:42 +02:00
Rene Gollent
87d33c4ff3 Slight refactoring.
- Factored out CppLanguage::ParseTypeExpression() into one that could
  be used in CLanguageFamily, with some hooks to help differentiate
  what's allowed in C vs C++. Makes the type parsing available for
  C files as well, and consequently allows typecasting to work for
  those.
2013-04-19 22:55:59 -04:00
John Scipione
4122ce2aff Move the save panel to the middle of the window as well 2013-04-19 21:25:18 -04:00
John Scipione
9e5508fab4 Move the alert to the middle of the window 2013-04-19 20:15:24 -04:00
Rene Gollent
3464764f7d Cleanup, no functional change. 2013-04-19 18:35:47 -04:00
Rene Gollent
3c6ba4733b Fix #9684.
Implement MemoryBlockRetrievalFailed() hook in
DebugReportGenerator. Use it to report failure to dump the
stack memory region instead of hanging forever waiting for
the request to succeed.
2013-04-19 17:48:46 -04:00
Rene Gollent
808bcad05c Add MemoryBlockRetrievalFailed() hook.
Adjust RetrieveMemoryBlockJob to call said hook if we fail to fulfill
the memory read request.
2013-04-19 17:47:04 -04:00
John Scipione
30e6af93e4 Eliminate background app and Deskbar app checks
This is a follow up on the fix for #9632.

Now that the group list in Deskbar never deals with background apps or the Deskbar app itself we can simplify the code by eliminating the checks, especially in Switcher.cpp (Twitcher).

Checking for background apps and Deskbar has also been eliminated from TExpandoMenuBar and TTeamMenu. The single point of entry for these checks is in TBarApp::AddTeam().

In Switcher.cpp remove OKToUse() since the list is assumed to contain only valid entries. TSwitchManager::CountVisibleGroups() also got removed because all groups are visible. TSwitchManager::_FindNextValidApp(), TSwitchManager::QuitApp(),  TIconView::ItemAtPoint(), TIconView::ScrollTo(), and TIconView::FrameOf() all got simplified significantly.
2013-04-17 18:50:03 -04:00
John Scipione
807ea4dad0 Rename sig variable to signature in BarApp 2013-04-17 17:20:49 -04:00
John Scipione
ab37997c98 Style fix and comment update 2013-04-17 15:58:42 -04:00
Pawel Dziepak
46575667eb Merge branch 'aslr' 2013-04-17 20:07:32 +02:00
Rene Gollent
f6c0237372 Fix handling of string fields in BMessages.
We can't depend specifically on a generic array type of a primitive
being available in the global type cache, because there might not have
been a DIE for it. As such, simply look up the type for the character
primitive and then derive an array type from that instead.
2013-04-16 22:57:22 -04:00
Rene Gollent
1b74b08f75 Save/restore renderer settings in view state. 2013-04-16 21:19:20 -04:00
Rene Gollent
c819aef9a1 Add renderer settings to VariablesViewNodeInfo. 2013-04-16 21:18:59 -04:00
Rene Gollent
ba2c3d57f6 Extend Settings to allow value restoration via message. 2013-04-16 21:17:44 -04:00
Rene Gollent
2b9c68af5d Fix broken save/restore of split view settings. 2013-04-16 17:56:45 -04:00
John Scipione
45fec7fc74 Check for empty group list in _FindNextValidApp(). Fixes #9632
Thanks mmlr! I went with "The easiest solution". Perhaps the OKToUse() could be simplified by removing the checks for background apps and Deskbar but I prefer to keep it as is in case there someone changes the code in the future.
2013-04-16 01:32:28 -04:00
John Scipione
6e22ba05d6 Style update 2013-04-16 01:32:24 -04:00
Rene Gollent
41cec3e6d4 Remember any applied typecasts in VariableViewState.
Preserves and restores typecasts across steps like we already do
for node expansion states.
2013-04-15 23:17:27 -04:00
Jessica Hamilton
c61ed599d4 Fixes #9673 2013-04-14 20:38:02 -05:00
Rene Gollent
eab9d5b444 Fix reference leak. 2013-04-14 18:44:54 -04:00
Rene Gollent
57245d2b73 Slight cosmetic adjustment.
If the current node is an address type and has as its only child an array type,
use the same approach we do for pointers to objects and hide the intermediate
dereference.
2013-04-14 18:44:53 -04:00
Rene Gollent
3fe982232b Fix array typecasting.
Since a C/C++ array is essentially pointer math, the derived type
needs to take this into account, otherwise the array indices wind
up being based off the address of the variable itself rather than
the array it points to.
2013-04-14 18:44:52 -04:00
Rene Gollent
d12519423f Adjust CreateDerivedArrayType to also take the lower bound.
Since valid array bounds vary by language, this needs to be passed
in by the source language creating the derived type. Adjust callers
accordingly.
2013-04-14 18:44:51 -04:00
Siarzhuk Zharski
4a65972ac4 Fix GCC2 build. Thanks to John for the warning. 2013-04-14 22:48:33 +02:00
Siarzhuk Zharski
a6ea4a194f Fix "Error opening terminal:xterm-256color" issue (#9636)
Looks like switching to declare "xterm-256color" terminal emulation was
made a bit early: there are lot of servers that still do not know about
this terminal. As was discussed in #9636 the only acceptable way is to
switch back to "xterm" and adjust corresponding entry in our local
termcap database to support 256 colors. So this changeset:

* Declare emulated terminal as "xterm";
* Change the colors and color pairs of "xterm" termcap entry to support
  256 colors;

Workarounds the #9636. Should be upgraded to "xterm-256color" some time
in the future.
2013-04-14 21:39:19 +02:00
Siarzhuk Zharski
f8668ab42f Improve File Encoding StatusView cell. (Fixes #9653)
* Encoding cell of the StyledEdit StatusView is visible now only in case
  the currently opened file encoding is not equal to default UTF-8 one;
* The Encodings menu that was opened by click on this cell is removed;
* Cmd-Opt-PgDn/PgUp shortcuts are added for quick iteration through the
  list of encodings.
2013-04-14 21:39:16 +02:00
John Scipione
d52ffca978 If above the scroll limit, scroll to limit.
This case happens when you are scrolled to the end of the list and
you do an action that causes the view to shrink but not enough for
the scroll arrows to be detached such as remove a team or unexpand
an application. Before it would keep you where you were showing an
extra grey area, now it scrolls you back to the new scroll limit.
2013-04-14 14:53:58 -04:00
John Scipione
753d86ac84 Need to SaveExpandedState() before rebuilding items.
Also, if mini-mode we can skip updating the view because it doesn't get drawn
until you click the TeamMenu expander.
2013-04-14 14:05:29 -04:00
John Scipione
f2e15d076c Need to remove items after Subscribe() 2013-04-14 13:39:55 -04:00
John Scipione
d6d8b95a6d Set the TeamMenuItems to a more reasonable width in mini mode 2013-04-14 13:28:08 -04:00
John Scipione
0af37cd3bc NULL check 2013-04-14 13:26:23 -04:00
John Scipione
004175c0d9 Eliminate unused DrawBackground method and restyle header 2013-04-14 13:26:00 -04:00
John Scipione
0969e20ee1 Refactor ExpandoMenuBar::BuildItems a bit 2013-04-14 13:25:09 -04:00
John Scipione
01f35d103f Style fixes to TeamMenu 2013-04-14 13:24:32 -04:00
John Scipione
8f0935ac21 Whoops, hide if minimode 2013-04-14 12:20:22 -04:00
John Scipione
a5172b4415 Fix bug where application menu items were wrong size
...in horizontal mode, also make CheckItemSizes more efficient
2013-04-14 02:49:37 -04:00
John Scipione
251ece3c74 Style fixes in BarView.h 2013-04-14 02:49:37 -04:00
John Scipione
777fffe8f7 Build the fBarMenu object in the BarView constructor
... then resize it and move it to the desired size and location on update.

* Create an fBarApp pointer and use it, this is easier than having to keep casting to TBarApp.
2013-04-14 02:49:37 -04:00
John Scipione
541decfaab Remove this code from FullState. Use default sMinimumWindowWidth 2013-04-14 02:49:36 -04:00
John Scipione
4ae3e5421d Fix a bug where the Deskbar menu was incorrectly sized in horizontal mode
Actually, the Deskbar menu was sized correctly but the separator item was not,
so, I've replaced the separator item with a new TSeparatorItem class that is derived
from BSeparatorItem but does it's own drawing. This neatly avoids the bug since
the TSeperatorItem doesn't need to be resized explicitly.

Also, there were some instances of AddSeperatorItem (with an e) that I renamed to
AddSeparatorItem (with an a). I also eliminated includes in the header which means
I added them in some cpp files where they were needed.
2013-04-14 02:49:36 -04:00
John Scipione
e83b2f0b9c Create a SetMaxItemWidth() method and set it in horizontal mode on update 2013-04-14 02:49:35 -04:00
John Scipione
03f7c11ece Rename SetWidthHeight to SetContentSize 2013-04-14 02:49:35 -04:00
John Scipione
bec7990562 Remove yet another unneeded include 2013-04-14 02:49:34 -04:00
John Scipione
5d6f247bb3 Reverse loop to eliminate checking count each iteration 2013-04-14 02:49:34 -04:00
John Scipione
9439677a9c Check if icon size is the same, if so, don't resize 2013-04-14 02:49:34 -04:00