summaryrefslogtreecommitdiff
path: root/src/gtk/dependency_chains_tab.h
AgeCommit message (Collapse)AuthorFilesLines
2008-12-29Refactor the package tab "conductor" to make it more readable and reusable.Daniel Burrows1-8/+5
Instead of a bunch of complicated functions that implicitly pass values around in slot bindings and manage memory awkwardly, we now have two "manager" objects that store a bunch of widgets and handle their signals. One deals with managing the widget to enter a search (colorizing it, showing errors, parsing the pattern, etc), and the other one embeds that object and uses it to manage a list of search results.
2008-12-24Visually indicate whether the current search pattern is syntactically ↵Daniel Burrows1-0/+3
correct, and handle searches for invalid patterns better. Before we would just treat an invalid pattern as a command to show every package in the repository. Now a small message is displayed with the parse error. Still to do: (a) make the implementation cleaner; packagestab.cc is getting quite messy. Probably we need to create an object that represents the whole "search view plus entry box" aggregate; it can be an element of the various tabs that contain these aggregates. Among other things, this will eliminate the duplication of code between the two places where we set the limit text (there are two places that have to check for parse exceptions and display the error). (b) Give the dashboard's search bar the same abilities. Perhaps we could create one object to represent a search bar where patterns are typed (would aggregate the entry with the error label and the Find button), and then make that a sub-part of an object representing a search bar plus a package view with a limit filter in between. (c) Somehow indicate which part of the text the user entered is related to the error message. e.g., the exception could be a MatchingSyntaxException that carries a range of string iterators (or just offsets from the start of the string), and we could highlight the offending text in the entry.
2008-08-13Add the new files that I missed in the last commit (whoops).Daniel Burrows1-0/+62