1 #ifndef TEXTEDITORVIEW_H 
    2 #define TEXTEDITORVIEW_H 
   37         std::shared_ptr<std::vector<Char>> 
sp;
 
   45         std::vector<TextEditorView::FormattedLine> 
lines;
 
   53             return lines.back().sp.get();
 
   67         std::vector<Char> *
chars(
size_t i)
 
   69             return lines[i].sp.get();
 
   71         std::vector<Char> 
const *
chars(
size_t i)
 const 
   73             return lines[i].sp.get();
 
   81     void drawCursor(
int row, 
int col, QPainter *pr, QColor 
const &color);
 
   93     int calcPixelPosX(
int row, 
int col, 
bool adjust_scroll, std::vector<Char> *chars) 
const;
 
   94     void parse(
int row, std::vector<Char> *chars) 
const;
 
   96     void calcPixelPosX(std::vector<Char> *chars, 
const QFontMetrics &fm) 
const;
 
  110     void drawText(QPainter *painter, 
int px, 
int py, QString 
const &str);
 
  114     void setCursorRow(
int row, 
bool auto_scroll, 
bool by_mouse) 
override;
 
  124     void updateVisibility(
bool ensure_current_line_visible, 
bool change_col, 
bool auto_scroll) 
override;
 
  139     void move(
int cur_row, 
int cur_col, 
int scr_row, 
int scr_col, 
bool auto_scroll);
 
  167     void moved(
int cur_row, 
int cur_col, 
int scr_row, 
int scr_col);
 
std::shared_ptr< TextEditorTheme > TextEditorThemePtr
Definition: TextEditorTheme.h:9
 
Definition: AbstractCharacterBasedApplication.h:506
 
Definition: TextEditorTheme.h:11
 
Definition: TextEditorView.h:35
 
std::shared_ptr< std::vector< Char > > sp
Definition: TextEditorView.h:37
 
FormattedLine()
Definition: TextEditorView.h:38
 
Definition: TextEditorView.h:43
 
size_t size() const
Definition: TextEditorView.h:55
 
void clear()
Definition: TextEditorView.h:46
 
FormattedLine & operator[](size_t i)
Definition: TextEditorView.h:59
 
std::vector< Char > * append()
Definition: TextEditorView.h:50
 
std::vector< TextEditorView::FormattedLine > lines
Definition: TextEditorView.h:45
 
std::vector< Char > const  * chars(size_t i) const
Definition: TextEditorView.h:71
 
std::vector< Char > * chars(size_t i)
Definition: TextEditorView.h:67
 
Definition: TextEditorView.h:32
 
int basisCharWidth() const
基準文字幅
Definition: TextEditorView.cpp:223
 
TextEditorTheme const  * theme() const
Definition: TextEditorView.cpp:107
 
void mouseReleaseEvent(QMouseEvent *event) override
Definition: TextEditorView.cpp:1066
 
void resizeEvent(QResizeEvent *event) override
Definition: TextEditorView.cpp:1149
 
void internalUpdateScrollBar()
Definition: TextEditorView.cpp:435
 
bool event(QEvent *event) override
Definition: TextEditorView.cpp:200
 
int scrollPosX() const
水平スクロール位置のピクセル値を取得
Definition: TextEditorView.cpp:646
 
void updateVisibility(bool ensure_current_line_visible, bool change_col, bool auto_scroll) override
Definition: TextEditorView.cpp:482
 
void wheelEvent(QWheelEvent *event) override
Definition: TextEditorView.cpp:1157
 
void setCursorRow(int row, bool auto_scroll, bool by_mouse) override
行位置を変更する
Definition: TextEditorView.cpp:375
 
void setTheme(const TextEditorThemePtr &theme)
Definition: TextEditorView.cpp:102
 
QVariant inputMethodQuery(Qt::InputMethodQuery q) const override
Definition: TextEditorView.cpp:1093
 
void moved(int cur_row, int cur_col, int scr_row, int scr_col)
 
void paintEvent(QPaintEvent *) override
描画
Definition: TextEditorView.cpp:721
 
int lineHeight() const
行の高さ
Definition: TextEditorView.cpp:213
 
void setFocusFrameVisible(bool f)
Definition: TextEditorView.cpp:1174
 
void updateCursorRect(bool auto_scroll)
Definition: TextEditorView.cpp:419
 
QColor colorForIndex(CharAttr const &attr, bool foreground)
Definition: TextEditorView.cpp:527
 
void moveCursorByMouse()
Definition: TextEditorView.cpp:1013
 
TextEditorView(QWidget *parent=nullptr)
Definition: TextEditorView.cpp:49
 
int scroll_unit_
Definition: TextEditorView.h:145
 
void drawText(QPainter *painter, int px, int py, QString const &str)
Definition: TextEditorView.cpp:506
 
void layoutEditor() override
Definition: TextEditorView.cpp:1139
 
QFont textFont() const
Definition: TextEditorView.cpp:501
 
void move(int cur_row, int cur_col, int scr_row, int scr_col, bool auto_scroll)
Definition: TextEditorView.cpp:490
 
void timerEvent(QTimerEvent *) override
Definition: TextEditorView.cpp:1179
 
void updateLayout()
Definition: TextEditorView.cpp:127
 
void mousePressEvent(QMouseEvent *event) override
Definition: TextEditorView.cpp:1036
 
ScrollUnit
Definition: TextEditorView.h:142
 
@ ScrollByCharacter
Definition: TextEditorView.h:143
 
RowCol mapFromPixel(const QPoint &pt)
ビューのピクセル座標から行と桁を求める
Definition: TextEditorView.cpp:324
 
void setScrollUnit(int n)
Definition: TextEditorView.cpp:632
 
QColor defaultBackgroundColor()
Definition: TextEditorView.cpp:519
 
void internalUpdateVisibility(bool ensure_current_line_visible, bool change_col, bool auto_scroll)
Definition: TextEditorView.cpp:461
 
void refrectScrollBar()
Definition: TextEditorView.cpp:1132
 
void setCursorCol(int col) override
桁位置を変更する
Definition: TextEditorView.cpp:396
 
void contextMenuEvent(QContextMenuEvent *event) override
Definition: TextEditorView.cpp:1190
 
int calcPixelPosX(int row, int col, bool adjust_scroll, std::vector< Char > *chars) const
行と桁位置からピクセルX座標を求める
Definition: TextEditorView.cpp:287
 
void mouseMoveEvent(QMouseEvent *event) override
Definition: TextEditorView.cpp:1079
 
void paintScreen(QPainter *painter)
描画(CharacterMode用)
Definition: TextEditorView.cpp:543
 
bool something_bad_flag
Definition: TextEditorView.h:160
 
void inputMethodEvent(QInputMethodEvent *e) override
Definition: TextEditorView.cpp:1102
 
void drawFocusFrame(QPainter *pr)
Definition: TextEditorView.cpp:626
 
~TextEditorView() override
Definition: TextEditorView.cpp:97
 
FormattedLines * fetchLines()
ビューに表示されている範囲のテキストを取得
Definition: TextEditorView.cpp:705
 
int scrollUnit() const
Definition: TextEditorView.cpp:637
 
void bindScrollBar(QScrollBar *vsb, QScrollBar *hsb)
Definition: TextEditorView.cpp:405
 
Private * m
Definition: TextEditorView.h:77
 
void setupForLogWidget(const TextEditorThemePtr &theme)
Definition: TextEditorView.cpp:411
 
void setTextFont(const QFont &font)
Definition: TextEditorView.cpp:115
 
void setSomethingBadFlag(bool f)
Definition: TextEditorView.h:161
 
PointInView pointInView(int row, int col) const
行と桁からビュー座標を求める
Definition: TextEditorView.cpp:667
 
int view_y_from_row(int row) const
Definition: TextEditorView.cpp:654
 
QColor defaultForegroundColor()
Definition: TextEditorView.cpp:511
 
void parse(int row, std::vector< Char > *chars) const
Definition: TextEditorView.cpp:314
 
void drawCursor(int row, int col, QPainter *pr, QColor const &color)
カーソルを描画
Definition: TextEditorView.cpp:683
 
Definition: GitTypes.h:67
 
Definition: AbstractCharacterBasedApplication.h:206
 
Definition: AbstractCharacterBasedApplication.h:245
 
Definition: TextEditorView.h:16
 
int start
Definition: TextEditorView.h:17
 
Format(int start, int length, QTextFormat const &f)
Definition: TextEditorView.h:20
 
int length
Definition: TextEditorView.h:18
 
QTextFormat format
Definition: TextEditorView.h:19
 
Definition: TextEditorView.h:15
 
std::vector< Format > format
Definition: TextEditorView.h:29
 
QString text
Definition: TextEditorView.h:28
 
Definition: AbstractCharacterBasedApplication.h:174
 
Definition: TextEditorView.h:152
 
int x
Definition: TextEditorView.h:153
 
int height
Definition: TextEditorView.h:155
 
int y
Definition: TextEditorView.h:154
 
Definition: TextEditorView.cpp:20