~ubuntu-branches/ubuntu/precise/konversation/precise-updates

« back to all changes in this revision

Viewing changes to src/viewer/ircview.h

  • Committer: Package Import Robot
  • Author(s): Jonathan Riddell
  • Date: 2011-11-11 00:14:52 UTC
  • Revision ID: package-import@ubuntu.com-20111111001452-gebhs7i1fzm6zkx2
Tags: 1.3.1-2ubuntu7
Add kubuntu_02_marker_line_crash_workaround.diff from upstream
to fix crashes on refresh, LP: #888825

Show diffs side-by-side

added added

removed removed

Lines of Context:
24
24
 
25
25
class Server;
26
26
class ChatWindow;
27
 
 
 
27
class Burr;
28
28
 
29
29
class KToggleAction;
30
30
class KMenu;
139
139
        void appendRememberLine();
140
140
 
141
141
        /// Create a remember line and insert it.
142
 
        void appendLine(ObjectFormats=MarkerLine);
 
142
        /// @return - Pointer to the Burr that was inserted into the block
 
143
        Burr* appendLine(ObjectFormats=MarkerLine);
143
144
 
144
 
        /// Forget the position of the remember line and markers.
 
145
        /// Convenience method - forget the position of the remember line and markers.
145
146
        void wipeLineParagraphs();
146
147
 
147
148
        /// Convenience method - is the last block any sort of line, or a specific line?
154
155
        /// Shortcut to get an object format of the desired type
155
156
        QTextCharFormat getFormat(ObjectFormats);
156
157
 
 
158
    public slots:
 
159
        // Doesn't have to be a slot, but what the hay.
 
160
        /// Called *only* from ~Burr(), by QTextBlockData::free
 
161
        void blockDeleted(Burr* b);
 
162
 
157
163
    private slots:
158
 
        /** Called to see if a marker is queued up for deletion. Only triggers if
159
 
            "where" is the beginning and there was nothing added.
160
 
        */
 
164
        /** Called every time a change occurs to the document.
 
165
         *
 
166
         * Used to infer the clearing of the entire document,
 
167
         * because Trolltech removed virtual from the method
 
168
         * that would indicate authoritatively.
 
169
         */
161
170
        void cullMarkedLine(int, int, int);
162
171
 
163
172
    private: //marker/remember line data
164
 
        bool m_nextCullIsMarker; ///< the next time a cull occurs, it'll be a marker
165
 
        QList<QTextBlock> m_markers; ///< what blocks are markers?
166
 
        int m_rememberLinePosition; ///< position of remember line in m_markers
 
173
        Burr *m_rememberLine, *m_lastMarkerLine;
167
174
        bool m_rememberLineDirtyBit; ///< the next append needs a remember line
168
175
        IrcViewMarkerLine markerFormatObject; ///< a QTextObjectInterface
169
176