fbdbg  3.0
FreeBASIC Debugger
log_notes.bas
Go to the documentation of this file.
1 
13 
14 
15 
21 CONSTRUCTOR LOG_Udt()
22  VAR fnam = "log.ui", fnr = FREEFILE
23  IF OPEN(fnam FOR INPUT AS fnr) THEN
24  ?PROJ_NAME & ": Cannot open " & fnam : END 1
25  'g_error("Cannot open " & fnam)
26  ELSE
27  Xml = STRING(LOF(fnr), 0)
28  GET #fnr, , Xml
29  CLOSE #fnr
30  END IF
31 ?" CONSTRUCTOR LOG_Udt"
32 END CONSTRUCTOR
33 
34 
35 
44 SUB LOG_Udt.add2Notes(BYVAL Txt AS gchar PTR = 0)
45  IF 0 = Txt ORELSE 0 = Txt[0] THEN EXIT SUB
46  IF BufNotes _
47  THEN gtk_text_buffer_insert_at_cursor(BufNotes, Txt, -1) _
48  ELSE Notes(Txt)
49 END SUB
50 
51 
52 
59 SUB LOG_Udt.Notes(BYVAL Txt AS gchar PTR = 0)
60  STATIC AS GtkWidget PTR dia
61  STATIC AS GtkTextView PTR gtv
62 
63  IF 0 = BufNotes THEN
64  VAR build = gtk_builder_new()
65  DIM AS GError PTR meld
66  IF 0 = gtk_builder_add_from_string(build, Xml, -1, @meld) THEN
67  WITH *meld
68  ?"Fehler/Error (GTK-Builder in LOG_Udt.Notes):"
69  ?*.message
70  simple_message(*.message)
71  END WITH
72  g_error_free(meld)
73  END 2
74  END IF
75  dia = GTK_WIDGET(gtk_builder_get_object(build, "window1"))
76  gtv = GTK_TEXT_VIEW(gtk_builder_get_object(build, "textview1"))
77  gtk_builder_connect_signals(build, 0)
78  g_object_unref(build)
79  gtk_window_set_title(GTK_WINDOW(dia), "Notes")
80  BufNotes = gtk_text_view_get_buffer(gtv)
81  END IF
82 
83  IF Txt ANDALSO 0 <> Txt[0] THEN gtk_text_buffer_set_text(BufNotes, Txt, -1)
84 
85  IF gtk_widget_get_visible(dia) THEN
86  gtk_widget_hide(dia)
87  ELSE
88  gtk_widget_show(dia)
89  END IF
90 END SUB
91 
92 
93 
102 SUB LOG_Udt.FileLog(BYVAL Fnam AS gchar PTR)
103  IF 0 = Fnam ORELSE 0 = Fnam[0] THEN exit sub
104  STATIC AS GtkWidget PTR dia
105  STATIC AS GtkTextView PTR gtv
106 
107  IF 0 = BufLogFile THEN
108  VAR build = gtk_builder_new()
109  DIM AS GError PTR meld
110  IF 0 = gtk_builder_add_from_string(build, Xml, -1, @meld) THEN
111  WITH *meld
112  ?"Fehler/Error (GTK-Builder in LOG_Udt.Notes):"
113  ?*.message
114  END WITH
115  g_error_free(meld)
116  END 2
117  END IF
118  dia = GTK_WIDGET(gtk_builder_get_object(build, "window1"))
119  gtv = GTK_TEXT_VIEW(gtk_builder_get_object(build, "textview1"))
120  gtk_builder_connect_signals(build, 0)
121  g_object_unref(build)
122  gtk_window_set_title(GTK_WINDOW(dia), "Log file: " & *Fnam)
123  BufLogFile = gtk_text_view_get_buffer(gtv)
124 
125  VAR fnr = FREEFILE
126  IF 0 = OPEN(*Fnam FOR INPUT AS fnr) THEN
127  VAR txt = STRING(LOF(fnr), 0)
128  GET #fnr, , txt
129  CLOSE #fnr
130 
131  gtk_text_buffer_set_text(BufLogFile, txt, LEN(txt))
132  END IF
133  END IF
134 
135  IF gtk_widget_get_visible(dia) THEN
136  gtk_widget_hide(dia)
137  ELSE
138  gtk_widget_show(dia)
139  END IF
140 END SUB
141 
142 DIM SHARED AS LOG_Udt PTR TXT
143