[Date Prev][Date Next][Thread Prev][Thread Next][Thread Index]

[XaraXtreme-dev] Text formatting enhancements

The text tool now supports left, right, centre and decimal tab stops.
To create a tab character in text, simply press the Tab key.

While a text object is selected or the cursor is in a text object the 
page ruler (enabled by pressing Ctrl-L) displays the text ruler with 
the tab stops that apply to the current paragraph. The formatting 
width (i.e., unbounded for non-wrapping text lines) of the current 
text object is highlighted in white on the ruler.

The "current tab stop type" button to the left of the origin shows the 
currently selected tab stop type. By clicking on the button you can 
cycle through the four available tab stop types. Clicking within the 
highlighted area on the ruler creates a tab stop of the currently 
selected type. You can move existing tab stops simply by dragging them 
somewhere else on the ruler (the mouse pointer used during dragging 
will eventually be the tab stop graphic). You can delete tab stops by 
dragging them off the ruler. Any changes to the ruler are applied to 
the selection (i.e., the selected text or text objects) or to the 
paragraph the cursor is in if no text is selected.

The default text ruler attribute is empty, but there are always 
implicit tab stops at equidistant positions beyond the last 
user-created tab stop. These are shown on the tab ruler, too.

Decimal tab stops align to the decimal point character as defined in 
the current locale. The decimal point character is stored in the tab 
stop, so files display the same even when moved between locales.

Known limitations:
   - In addition to the tab stops, the text ruler also shows 
     markers for the left/right margin and the first line indent. 
     These cannot be dragged yet.
   - Clicking on the ruler steals the keyboard focus from the 
     document view, so after editing the ruler, you have to click 
     in the text to put the focus back before you can continue 
   - EPS export for tabs is not implemented yet.

Apart from these limitations, the implementation is supposed to be 
stable, so if you find anything wrong, please file a bug report.