Chris Smith
192550f434
Move event bus code to a bundle.
Issue #750
7 роки тому
Chris Smith
65174b6ca6
Add "unstyled" formatter func to strip control codes.
Closes #755
7 роки тому
Chris Smith
3f657ce1dd
Add OSGI dependency, activator.
This won't affect normal use of the client, other than it having
a few extra unused classes and some additional lines in the
manifest.
Issue #750
7 роки тому
Chris Smith
08f54bad9f
Fix getStyledText() scrubbing underline and stop chars.
Closes #757
7 роки тому
Chris Smith
9092402a3f
showrawwindow isn't a setting.
Issue #753
7 роки тому
Chris Smith
5161aa8861
Fix stripping nickname control codes.
Closes #751
7 роки тому
Chris Smith
4c35da850d
Update copyright.
7 роки тому
Chris Smith
bc63c527ef
Apply object display properties when formatting events.
If an object in a formatter tag ({{foo.bar.baz}}) is Displayable,
then we will modify the output based on its display properties.
Currently only supports user links and foreground colours.
This also changes the internal format of nickname links to be
`\u16<nick to link to>\u16<text to show>\u16`, allowing the
link and text to differ. This means if you formatted users
by showing their realname, you could still click them to
open a query.
Closes #424
Closes DMDirc/Plugins#507
7 роки тому
Chris Smith
407d8b00fa
Add a display property for linking to users.
Issue #424
7 роки тому
Chris Smith
152fbfcb2a
Fix config binding for unread status manager.
I broke it in my interface-extraction shennanigans.
Closes DMDirc/Plugins#509
7 роки тому
Chris Smith
82f897f85e
Add an interface for ColourManager.
7 роки тому
Chris Smith
e52b88ec90
Move base command etc to API
7 роки тому
Chris Smith
691ce6f2e4
Move most events to API
7 роки тому
Chris Smith
ab4e7f023a
Bulk API move.
7 роки тому
Chris Smith
318402848e
Add an interface for tab completers, move to API.
7 роки тому
Chris Smith
37e196fdc6
Kill TabCompletionMatches.
7 роки тому
Chris Smith
be72ff7de0
Deprecate TabCompletionMatches.
Make it extend a list instead of wrapping it, so we can just replace
all usages with... an actual list.
7 роки тому
Chris Smith
c539721d58
Extract interface for CommandParser
7 роки тому
Chris Smith
f5be0bf102
Add interface for UnreadStatusManager.
7 роки тому
Chris Smith
f4784c4130
Make Command an interface
7 роки тому
Chris Smith
7127abfa36
Make commands extend BaseCommand.
Flip BaseCommand and Command around so everything still works.
7 роки тому
Chris Smith
a652e88581
Rename Command to BaseCommand.
Command will eventually become an interface when all usages have been replaced
7 роки тому
Chris Smith
5a3c8b1543
Fix Override annotation
7 роки тому
Chris Smith
6ef93005ae
Move some classes to API
7 роки тому
Chris Smith
483306c022
Extract an interface for Styliser.
7 роки тому
Chris Smith
91584222e1
Remove deprecated styliser methods.
7 роки тому
Chris Smith
8343350cec
Move static styliser methods to new class.
The styliser needs an interface extracting into the API, and
we don't really want huge static methods defined on that.
7 роки тому
Chris Smith
90675fa8ff
Minor style fixes
7 роки тому
Chris Smith
5b9343873b
Use PrivateChat in events, not Query.
7 роки тому
Chris Smith
ba7cba7719
Migrate to new @AddonConfig annotation.
7 роки тому
Chris Smith
84e7992e2c
Migrate to new @UserConfig annotation.
7 роки тому
Chris Smith
c15764616f
Migrate to new @GlobalConfig annotation.
7 роки тому
Chris Smith
57f6323e62
Add dummy version.config.
This allows running DMDirc from IDEA, which seems useful.
Running a normal build just replaces the file in the build output.
7 роки тому
Chris Smith
3125be0e12
Add config annotations to API.
At present anything requesting the global config has to depend on
ClientModule, which won't necessarily be exposed through the API.
Move @GlobalConfig , @AddonConfig and @UserConfig to top level
classes in API, and provide both versions of them for now.
7 роки тому
Chris Smith
1ae3f15867
Move IRC control codes to their own class.
Some other minor tidying to Styliser.
7 роки тому
Chris Smith
2890ffc0e2
Move Document, Line et al to API.
7 роки тому
Chris Smith
89a09f4760
Extract an interface for Line.
7 роки тому
Chris Smith
ae5a5e7251
Extract interfaces for BackBuffer and IRCDocument.
7 роки тому
Chris Smith
23569dc14e
Move some more classes to API.
7 роки тому
Chris Smith
283c1ba958
Add an interface for ConfigBinder.
Rename the private implementation to ConfigBinderImpl, and
make ConfigBinder itself an interface.
7 роки тому
Chris Smith
ad7868c5c2
ConfigProviderListeners aren't public.
7 роки тому
Chris Smith
12b5c1ddd0
Remove ConfigTarget from interfaces.
This shouldn't be exposed. Internal classes switch to using
the full class rather than the interface, so they can carry
on accessing the removed methods.
7 роки тому
Chris Smith
5cc0af4324
Use EventBus interface.
This is just an IntelliJ refactor, using EventBus in place of
DMDircMBassador whenever possible.
7 роки тому
Chris Smith
f51247d44e
Add an interface for the event bus.
Our API shouldn't depend on MBassador. Extract a simple interface
to break the dependency.
7 роки тому
Chris Smith
aa07d2579b
Move some files into the API project.
7 роки тому
Chris Smith
0511e076b5
Add an API directory.
This is for the interfaces/trivial implementation classes that
DMDirc plugins can interact with. Eventually plugins will build
against the API instead of the DMDirc client itself, which will
allow for remote/detachable clients (amongst other things).
7 роки тому
Chris Smith
015d7aa8ac
Fix a few places where Query is temporarily needed.
7 роки тому
Chris Smith
28d2a13704
Replace Query with PrivateChat in Connection.
7 роки тому
Chris Smith
56d4018cfc
Use PrivateChat for events, not Query.
Issue #76
7 роки тому
Chris Smith
ac24970184
Don't fiddle with ports before passing them to the parser.
If the user doesn't specify a port, allow the parser implementation
to figure it out for itself. This allows for things like SRV lookups,
or different default ports per protocol.
8 роки тому